Java 回顾笔记_set集合

set集合概念:

这个集合是一个不包含重复元素的(同一个元素的)集合.


set集合的功能和 conllection 集合一样。


注意set集合 只能使用迭代器进行 取出元素,且元素是无序的。不能保证你存进去的顺序,和取出来的顺序一致.


Hashset集合:


hashset内部数据结构是哈希表,是不同步的.


哈希表,就是通过哈希算法,特有的算法,可以给你的对象算出一个位置,

让你的对象 在对应的位置上进行存储。

这样方便查询 ,直接调用算法就可以 知道你的位置。


当时有一些算出来的地址相同,但是内容不同的元素,也会给你一个位置去存储。

他是根据你开始给你的位置,然后在通过这个位置,在进行另外一个种算法的出来的。




记住是通过元素的方法,因为你元素继承与obj的话,那么你就需要重写 这两个方法。



__________________________

ArrayList 的 contains 和 remove 底层使用都是equals 进行判断是否有相同的元素


而hashset集合 必须是先 进行hashcode()判断 在进行equals 判断.


_____

LinkedHashSet集合:

hashset 无序,为了 让 集合唯一 且有序  我们就使用 他的子类LinkedHashSet集合。


————————————————————

集合框架-TreeSet集合:


Java 回顾笔记_set集合_第1张图片

集合框架-TreeSet集合-Comparator比较器:

Java 回顾笔记_set集合_第2张图片

new TreeSet(new myCompareor);

public myComperor  implments Comparator ;


比较器比较常用。


比如说你string 类的 比较方法不适合,你就需要 去创建一个类 去实现比较器的 比较方法。






你可能感兴趣的:(java)