my dog learned polymorphism
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes confusion between == & equals( ) Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "confusion between == & equals( )" Watch "confusion between == & equals( )" New topic

confusion between == & equals( )

sangita chakor

Joined: Dec 11, 2000
Posts: 1
confusion between == & equals()
Cindy Glass
"The Hood"

Joined: Sep 29, 2000
Posts: 8521
When you compare two objects in Java and you use the ==
such as a == b
Java will look at the ADDRESS that is in a and the ADDRESS that is in B and see if they are the same. This is very valid if you want to see if both a and b point to the exact same object. However if you want to see if the object pointed at by a and the object pointed at by b have 2 objects which are exactly ALIKE then you need to use equals().
Be carefull though because the Object class method "equals()" just uses the == comparison and not all classes override that method to privide meaningfull equals() methods.
(Note: the situation above also explains why there are clone() methods instead of just saying a = b which would just give you two variables containing the address of one object).
[This message has been edited by Cindy Glass (edited December 11, 2000).]

"JavaRanch, where the deer and the Certified play" - David O'Meara
I agree. Here's the link:
subject: confusion between == & equals( )
It's not a secret anymore!