File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Beginning Java and the fly likes try  this program Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "try  this program" Watch "try  this program" New topic
Author

try this program

kumara swamy adurthi
Greenhorn

Joined: Mar 16, 2005
Posts: 4
class Q7
{
public static void main(String[] args)
{
if( new Boolean("true") == new Boolean("true"))
System.out.println("True");
else
System.out.println("False");
}
}
i know this program but i donot know reason of this answer
Nigel Browne
Ranch Hand

Joined: May 15, 2001
Posts: 673
It is because each of your Boolean objects refers to a different address in memory.
Svend Rost
Ranch Hand

Joined: Oct 23, 2002
Posts: 904
Hi,

Your testing if the two objects are equal, as in "sharing the same memory".

This might make it easier to understand:


/Svend Rost
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
You may also want to compare this with

Layne


Java API Documentation
The Java Tutorial
Mike Gershman
Ranch Hand

Joined: Mar 13, 2004
Posts: 1272
Now try this program:

To understand the different result, look in the API for Boolean.valueOf(boolean). Boolean.valueOf(String) works the same way.

Bottom line: Only new always gives a new object. Only string literals, String constant expressions, and interned strings always give the same object for a given value. Other expressions offer no guarantee.


Mike Gershman
SCJP 1.4, SCWCD in process
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: try this program
 
Similar Threads
Boxing - Boolean question
doubt in " =="
formatting
Boxing/Unboxing and equality
Boxing and unboxing in Java 5