3.请用自己的语言描述你所了解的集合体系
1) 单列集合Collection有两个子接口:List接口和Set接口。
① List接口:存贮有序,元素可重复,有索引;实现接口有ArrayList和LinkedList.
a) ArrayList集合:底层是数组结构,增删慢,查询快;
b) LinkedList集合:底层是链表结构,增删快,查询慢。
② Set接口:存贮无序,无素不可重复,无索引。实现接口有HashSet和TreeSet.
a) HashSet集合:底层是哈希表。添加元素时,先判断hashCode(),如果相同,再比较equals方法,如果也相同,则不存
储该数据。
其子类接口 LinkedHashSet集合:双向链表结构,存取有序,但数据量大时,会占用较多资源。
b) TreeSet集合:会对存到集合中的元素进行排序。自然排序:在类中实现Comparable接口,重写compareTo方法;
比较器排序:在创建集合对象是,添加比较器。
2) 双列集合Map集合:键值呈映射关系,键值一一对应,键不可重复,值可以重复,元素存取无序。其实现接口有
HashMap和TreeMap.
① HashMap集合:底层是哈希表结构,键值一一对应,键不可重复,值可以重复,元素存取无序。
② TreeSet集合:可以对键的集合进行自动排序。