1.hashset :
hashset 是无重复存储, 哈希表无顺序所以存储的时候也是无顺序的。
当存自定义的数据结构的时候会重复,因为每个new出来的对象hash值都是不一样的。所以能存的进去。不需要排序,只需要判断重复不重复,所以重写hashcode和equals。
2.hashcode和equals方法的重写判断元素唯一性(hash里的面的)
3.为什么要重写hashcode和equals?
答:当自定义数据类型的时候,如学生类型,有可能会写到hashset里面,所以一般都要复写这两个方法
4.treeset:
treeset 自动排序(自然排序)。
如果是自定义的数据类型的话,就要重写comparable中的compareTo方法指定按什么方式排序。
数据无重复存在 因为(comparable和comparator是tree里面的)
compareTo比较元素的自然顺序(以字母排序,数字大小)
5.compare自定义排序顺序,重写它的compare方法、
6.List如果需要排序的话使用sort自然排序,也可重写compare方法自定义排序种类
7.sort也用于数组
8.使用binarysearch(list,“fdsad”)查找的集合必须有顺序
9.collections中的swap(list,x,y)只能操作list因为需要脚标;shuffle(list),随机置换集合中的元素
10.list两种取出方式 for和itereator,set只有一种iterator
|
|