【重写equals方法时也要重写hashCode方法】
重写equals方法时,记住,也要重写hashCode方法(当你使用集合HashMap,HashSet,Hashtable)
看例子吧 :
[java]
package equalhashcode;
import java.util.*;
import bad.NewFileSize;
class Person {
private String username;
private int age;
public Person() {
}
public Person(String username,int age) {
this.username = username;
this.age = age;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public boolean equals(Object obj) {
Person person = (Person)obj;
boolean flag = false;
if(this.username.equals(person.getUsername())&&this.age==person.getAge()) {
flag = true;
}更多精彩教程请关注:电脑系统