Rumah >Java >javaTutorial >Penjelasan terperinci tentang penggunaan dan senario yang boleh digunakan bagi kaedah equals di Java
Penjelasan terperinci kaedah equals(Object) dalam Java dan senario penggunaannya
Di Java, kaedah equals(Object) ialah kaedah yang sangat penting, yang digunakan untuk membandingkan sama ada dua objek adalah sama. Dalam artikel ini, kami akan menerangkan secara terperinci senario dan prinsip penggunaan kaedah equals(Object), dan memperkenalkan beberapa teknik penggunaan biasa.
1. Prinsip kaedah equals(Object)
Di Java, semua kelas mewarisi daripada kelas Object, dan kaedah equals(Object) dalam kelas Object ialah pelaksanaan lalai. Kaedah equals(Object) dalam kelas Object sebenarnya membandingkan sama ada rujukan dua objek adalah sama, iaitu, sama ada kedua-dua objek adalah objek yang sama. Pelaksanaan khusus adalah seperti berikut:
public boolean equals(Object obj) {
return (this == obj);
}
Dalam banyak kes, perkara yang perlu kita bandingkan ialah sama ada kandungan dua objek adalah sama, bukan hanya rujukan. Oleh itu, kita perlu mengatasi kaedah equals(Object) dalam kelas tersuai untuk memenuhi keperluan kita.
2. Senario penggunaan kaedah equals(Objek)
Apabila kita perlu membandingkan nilai dua jenis asas, kita boleh menggunakan operator == secara langsung. Sebagai contoh, bandingkan dua integer untuk kesamaan:
int a = 10;
int b = 10
jika (a == b) {
System.out.println("a和b相等");
}
String str2 = "Hello";
if (str1.equals(str2)) {
System.out.println("str1和str2相等");}
private String name; private int age; // 构造方法和其他方法省略 @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null || getClass() != obj.getClass()) { return false; } Person person = (Person) obj; return age == person.age && Objects.equals(name, person.name); }}Orang orang1 = Orang baru("Zhang San", 20);
Orang orang2 = Orang baru("Zhang San", 20) ;
jika (orang1.sama dengan(orang2)) {
System.out.println("person1和person2相等");}3 Petua untuk menggunakan kaedah sama dengan(Objek)
String str2 = "Hello";
if (Objects.equals(str1, str2)) {
System.out.println("str1和str2相等");} NullPointerException boleh dielakkan dengan menggunakan kaedah Objects.equals. 4. RingkasanArtikel ini memperkenalkan kaedah equals(Object) dalam Java dan senario penggunaannya secara terperinci. Dalam pembangunan sebenar, kita sering perlu membandingkan sama ada kandungan dua objek adalah sama, jadi adalah sangat penting untuk mengatasi kaedah equals(Object). Dengan mengikuti konvensyen kaedah equals(Object) dan menggunakan kaedah Objects.equals, kita boleh membandingkan kandungan objek dengan lebih tepat dan selamat. Saya harap artikel ini akan membantu anda memperoleh pemahaman yang lebih mendalam tentang kaedah equals(Object) dan senario penggunaannya.
Atas ialah kandungan terperinci Penjelasan terperinci tentang penggunaan dan senario yang boleh digunakan bagi kaedah equals di Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!