The equals() Method example in Java
By: Baski
The equals() method compares two objects for equality and returns true if they are equal. The equals() method provided in the Object class uses the identity operator (==) to determine whether two objects are equal. For primitive data types, this gives the correct result. For objects, however, it does not. The equals() method provided by Object tests whether the object references are equal—that is, if the objects compared are the exact same object.
To test whether two objects are equal in the sense of equivalency (containing the same information), you must override the equals() method. Here is an example of a Book class that overrides equals():
public class Book {
...
public boolean equals(Object obj) {
if (obj instanceof Book)
return ISBN.equals((Book)obj.getISBN());
else
return false;
}
}
Consider this b that tests two instances of the Book class for equality:
Book firstBook = new Book("0201914670"); //Swing Tutorial, 2nd edition
Book secondBook = new Book("0201914670");
if (firstBook.equals(secondBook)) {
System.out.println("objects are equal");
} else {
System.out.println("objects are not equal");
}
This program displays objects are equal even though firstBook and secondBook reference two distinct objects. They are considered equal because the objects compared contain the same ISBN number.
You should always override the equals() method if the identity operator is not appropriate for your class.
Note: If you override equals(), you must
override hashb() as well.
Archived Comments
1. Readers of this article should know there are a lot of pitfalls in implementing equals, a few of whi
View Tutorial By: eimmer at 2017-03-11 19:40:27
2. What a information of un-ambiguity and preserveness of precious know-how concerning unpredicted emot
View Tutorial By: solucionesinformaticas at 2017-03-10 07:14:23
3. I'm a begner but i dont know the way to ask quistion by using google can any one help me?
View Tutorial By: sajid kahn at 2013-05-23 19:15:26
4. Hi,
I think this is not a correct defination of equals method.
According to me
View Tutorial By: Dinesh Chopra dc at 2013-03-19 04:30:48
5. its show objects are not equal
View Tutorial By: Amit at 2012-12-22 14:56:29
6. Thanks for posting the JAVA source code!!
View Tutorial By: Coder at 2010-07-29 11:41:10
Comment on this tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Java program to get location meta data from an image
Program using concept of byte long short and int in java
Update contents of a file within a jar file
Tomcat and httpd configured in port 8080 and 80
Count number of vowels, consonants and digits in a String in Java
Student marks calculation program in Java
Calculate gross salary in Java
Calculate average sale of the week in Java
Vector in Java - Sample Program