== does shallow comparison. Whereas .equals() does deep comparison only if you override this method. As the .equals() of Object class does the same thing as == does, need to override this method. boolean equals(Object�obj) Indicates whether some other object is "equal to" this one. Hope this helps!