wood burning stoves 2.0*
The moose likes Blatant Advertising and the fly likes SJCP question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Other » Blatant Advertising
Bookmark "SJCP question " Watch "SJCP question " New topic
Author

SJCP question

mohit rastogi
Greenhorn

Joined: Jan 14, 2007
Posts: 7
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 .
 
jQuery in Action, 2nd edition
 
subject: SJCP question