Treeset
定义:
TreeSet<Integer> treeSet=new TreeSet<>();
<Integer>:表示泛型
TreeSet<>():()没有参数表示无参构造,(有参数)表示有参构造
TreeSet的特点:
1.不包含重复元素
2.没有带索引的方法
3.可以将元素按照规则进行排序
(特有属性) 想要使用TreeSet需要制定排序规则
.1.不含重复元素且按顺序输出
输出结果:
2.(特有属性) 想要使用TreeSet需要制定排序规则
无参构造自然排序:
1.自定义类型需要实现Comparable接口
2.重写Comparable接口的compareTo抽象方法制定比较规则
3.调用学生类
输出结果:
有参构造方法比较器Comparetor(步骤):
1.比较器排序,就是让集合构造方法接收Comparetor的实现类对象,重写compare(To1,To2)方法(可以使用匿名内部类实现,也可以用lambda)
2.重写方法时,一定要注意排序规则必须按照要求的主要条件和次要条件来写
HashSet
使用hashSet要重写自定义类里面的equals和hashCode方法
根据属性值去重,不重写的话系统会默认使用地址值去重