Forums Register Login

SJCP question

+Pie Number of slices to send: Send
I write the question Please give me the write answer for that .

class X {
public static void main(String[ ] args) {
Boolean b1 = new Boolean( true );
boolean b2 = true;
Boolean b3 = Boolean.valueOf( "FALSE" );
Boolean b4 = Boolean.valueOf( "yes" );

if ( b1 & b2 || b3 | b4)
System.out.println( "Mercury" );
else
System.out.println( "Mars" );
}
}

Options :

a . Mercury
b . Mars
c . Compilation fails
d . Runtime exception


this is the Question i try it on the compiler 1.5 . the correct answer is Mercury.

But I got this form some simulator where the Question answer is as follows :
-------------------
c . Compilation fails

All constructions for b1 to b4 are valid. b1 is a Boolean object (created through the Boolean wrapper class) with a value of true. b2 is a boolean primitive with value as true. b3 and b4 are both Boolean objects with the same value of false. b3 and b4 are created through the static Boolean valueOf( ) method. This method accepts primitive boolean values or case-insensitive string representation of the boolean values. If you input an unrecongized boolean value or the null literal, the valueOf( ) method will simply return a Boolean object with a false value.

Nevertheless, Boolean objects created through the Boolean wrapper class cannot be used as an expression in a boolean test. A Boolean object is not the same as a boolean primitive. Therefore, the compilation fails at the if clause. Beware of such trick question.

------------------------
pls any one can reply me for this question what is the correct answer for that .
Do you pee on your compost? Does this tiny ad?
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 811 times.
Similar Threads
Wrapper Class
Explain the strange behavior of Boolean Class??
Unable to understand result of this code
Boolean wrapper class
Doubt - 'valueOf' method
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 28, 2024 02:16:33.