Home / Java Programming / Java.lang Class :: Discussion

Discussion :: Java.lang Class

  1. Which of the following would compile without error?

  2. A.
    int a = Math.abs(-5);
    B.
    int b = Math.abs(5.0);
    C.
    int c = Math.abs(5.5F);
    D.
    int d = Math.abs(5L);

    View Answer

    Workspace

    Answer : Option A

    Explanation :

    The return value of the Math.abs() method is always the same as the type of the parameter passed into that method.

    In the case of A, an integer is passed in and so the result is also an integer which is fine for assignment to "int a".

    The values used in B, C & D respectively are a double, a float and a long. The compiler will complain about a possible loss of precision if we try to assign the results to an "int".


Be The First To Comment