Home » Java Programming » Operators and Assignments

Which of the following are legal lines of code? int w = (int)888.8; byte x = (byte)1000L; long y = (byte)100; byte z = (byte)100L;

Correct Answer: All statements are correct.

Explanation:

Statements (1), (2), (3), and (4) are correct. (1) is correct because when a floating-point number (a double in this case) is cast to an int, it simply loses the digits after the decimal.


(2) and (4) are correct because a long can be cast into a byte. If the long is over 127, it loses its most significant (leftmost) bits.


(3) actually works, even though a cast is not necessary, because a long can store a byte.


← Previous Question Next Question→

More Questions from Operators and Assignments

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion