Arraylist:底层是数组结构,查询快,增删慢
linkedList:底层数链表,查询慢,增删快
同一个对象调用的hashCode值是相同的。
HashSet:
1、底层数据结构是hash表
2、不能保证迭代顺序的一致性。
3、不能用普通for循环
4、不包含重复元素
5、Hashset保证元素唯一的分析:先通过hashcode判断是否存在,再通过equals判断是否相等。
6、HashSet保证元素唯一性,需要重写hashCode和equals方法。
linkedHashSet:
1、底层是hash表和链表
2、由链表保证元素有序,由hash表保证元素唯一。
TreeSet:
1、元素有序,这里的有序不是指存取和取出顺序,而是按照一定规则进行排序,具体排序方式取决于构造方法。
TreeSet() 根据元素自然排序
TreeSet(Comparator comparator) 根据执行比较器排序
2、没有带索引的方法,不能使用普通for循环
3、不能重复元素



