Easy Tutorial
For Competitive Exams

Which of the following are legal lines of Java code?
1. int w = (int)888.8;
2. byte x = (byte)100L;
3. long y = (byte)100;
4. byte z = (byte)100L;

1 and 2
2 and 3
3 and 4
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.
Share with Friends
Privacy Copyright Contact Us