list和set的区别
list和set都实现同一个接口,
list是有序集合
ArrayList和linkedList都实现了List接口,ArrayList是线性结构,根据下标对数据进行操作,ArrayList查询快,增删慢。
LinkedList是链表结构,增加和删除快,查询慢。
Set是无序的
HashSet和TreeSet都实现了Set接口,内容不可重复,HashSet底层是哈希表,通过hashcode和eq来保证数据的一致性。
TreeSet底层是二叉树,根据比较的返回值确定元素的一致性。
LinkedHashSet:底层是链性+二叉树+哈希表。由链表保证元素有序,哈希表保证元素唯一