Set集合,Map集合
Set体系集合用于存储无序的元素,值不能重复。对象的相等性本质是hashCode值(java是依据对象的内存地址计算出的此序号)判断的。想让两个不同的对象视为相等的时候,就必须覆盖Object的hashcode方法和equals方法。Set有3个实现类Hashset,Treeset,linkedHashset。
HashSet(Hash表)
存放的是哈希值。HashSet存储元素的顺序是无序的,基于HashMap实现的,底层采用HashMap来保存元素。
LinkedHashSet
继承HashSet,内部是LinkedHashMap,LinkedHashMap继承HashMap。相当于基于HashMap实现的。
Treeset(二叉树)
使用二叉树的原理对新add()的对象按照指定的顺序排序,每增加一个对象都会排序。
遍历: 前序遍历 根结点,左子树,右子树
中序遍历 左子树,根结点,右子树
后序遍历 左子树,右子树,根结点