集合:
集合与数组是不一样的,二者虽然都是容器,但不同点在于:数组的长度是固定的,只能存储同一类型的元素,但集合的长度是可变的,可存储不同类型的对象。(一般用于开发对象较多时)
顶层接口():
-
单列集合
Collection
存储单个元素
有两个重要的接口(
接口不能继承类):
List(接口元素按进入先后有序保存,可重复)
(
ArrayList,LinkedList,Vector)
- ArrayList<E> 集合:(存储范围:可存储int类型的最大值)
(具体大小与内存大小有关)
-
一些重要的
Collection方法
: -
public boolean add(E e)
: 把给定的对象添加到当前集合中 。(添加元素) -
public void clear()
:清空集合中所有的元素。(清空元素) -
public boolean remove(E e)
: 把给定的对象在当前集合中删除。(移除元素) -
public boolean contains(E e)
: 判断当前集合中是否包含给定的对象。(判断元素是否存在) -
public boolean isEmpty()
: 判断当前集合是否为空。 -
public int size()
: 返回集合中元素的个数。(元素数量) -
public Object[] toArray()
: 把集合中的元素,存储到数组中。(集合转数组) -
双列集合
Map
- 存储映射(一对关系(元素)):(a,b)b可以重复,但a不能,a与 b相互对应。
- 常用子类:HashMap、LinkedHashMap
-
HashMap<K,V> 哈希表结构,元素的存取顺序不能保证一致(元素无序)。需要重写键的hashCode()方法、equals()方法来保证键的唯一、不重复,
-
Map常用方法:
-
public V put(K key, V value)
: 把指定的键与指定的值添加到Map集合中。(添加元素) -
public V remove(Object key)
: 把指定的键 所对应的键值对元素 在Map集合中删除,返回被删除元素的值。(删除key对应元素) -
public V get(Object key)
根据指定的键,在Map集合中获取对应的值。(获取key对应元素) -
boolean containsKey(Object key)
判断集合中是否包含指定的键。(判断是否存在key对应元素) -
public Set<K> keySet()
: 获取Map集合中所有的键,存储到Set集合中。 -
public Set<Map.Entry<K,V>> entrySet()
: 获取到Map集合中所有的键值对对象的集合(Set集合)。(获取所有的元素,存到Set集合中)