HashSet
代码
package JAVA.JAVASE.Collection.List_test;
import java.util.HashSet;
import java.util.Iterator;
public class Set_test {
public static void main(String[] args) {
//1.创建集合对象
HashSet<Student> set = new HashSet<>();
//2.创建元素对象
Student s1 = new Student("林宏程", 11);
Student s2 = new Student("林宏", 21);
Student s3 = new Student("林", 31);
Student s4 = new Student("l", 41);
Student s5 = new Student("l", 41);
//3.添加到集合里
set.add(s1);
set.add(s2);
set.add(s3);
set.add(s4);
set.add(s4);
set.add(s5);
//4.遍历
//4.1增强for循环
for (Student student : set) {
System.out.println(student);//set集合是唯一性 乱序的 所以每次打印都是随机的 而且相同的对象不再打印
//但是 对于相同属性不同对象的s5来说 他不是重复的 set唯一性依赖的方法是hashCode()和equals()方法 一般需要重写这2个方法
//解决方法
//在Student中重写equls()和hashCode()方法 alt+insert 直接输出hashCode()和equals()方法就可以了
}
System.out.println("----------------------------------------");
//4.2迭代器
Iterator<Student> it = set.iterator();
while (it.hasNext()){
System.out.println(it.next());
}
}
}
总结
如上代码