集合是Java中提供的一种容器,可以用来存储多个数据。
集合与数组的区别:
数组的长度是固定的,集合的长度是可变的。
数组中存储的是同一类型的元素。集合中可以存储对象。
1.Collection集合
interface Collection<E> java中所有集合的总接口
有两个子接口,一个叫List,一个叫Set
--|List<E>特点:存储数据的时候有序可重复
--|--|ArrayList<E> List接口下面的实现类,底层是一个数组,默认容量为10
--|--|LinkedList<E> List接口下面的实现类,底层是一个双向链表
--|Set<E>特点:存储数据的时候无序不可重复
--|--|HashSet<E> Set接口的实现类,底层是hash表
--|--|TreeSet<E> Set接口的实现类,底层是树形结构
2.Map集合
Map集合也是用来存数据的(双边队列)
Map<K,V> K:键 key V:值 value
键是不能重复的,是唯一的,值可以重复
Map<K,V>接口
--|HashMap<K,V> 基于hash值进行存储的,依靠key
--|TreeMap<K,V> 基于二叉树进行存储的,存储的形式也是key