版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/guyan1111/article/details/70262575
1,创建Person类
public class Person {
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Person(String name,Integer age){
this.name = name;
this.age = age;
}
@Override
//重写toString方法
public String toString() {
// TODO Auto-generated method stub
return name+":"+age;
}
@Override
//重写hashcode方法
public int hashCode() {
// TODO Auto-generated method stub
return this.name.hashCode()+age*37;
}
@Override
//重写equals方法
public boolean equals(Object obj) {
// TODO Auto-generated method stub
if(!(obj instanceof Person)){
return false;
}
Person p = (Person)obj;
return this.name.equals(p.name)&&this.age==p.age;
}
}
public static void main(String[] args) {
//创建Person对象
Person p1 = new Person("zhangsan", 12);
Person p2 = new Person("lisi", 17);
Person p3 = new Person("wangwu", 19);
Person p4 = new Person("zhangsan", 12);
Person p5 = new Person("zhangsan", 13);
//将对象添加到集合中
ArrayList list = new ArrayList();
list.add(p1);
list.add(p2);
list.add(p3);
list.add(p4);
list.add(p5);
//判断是否重复并添加
ArrayList list2 = new ArrayList();
for (int i = 0; i < list.size(); i++) {
Object obj = list.get(i);
if (!(obj instanceof Person)) {
list2.add(obj);
}
Person p = (Person) obj;
if (!(list2.contains(p))) {
list2.add(p);
}
}
System.out.println(list);
System.out.println(list2);
}
ArrayList是使用最多 的一个集合类