- 集合是什么? 为什么使用集合?
- 集合的简单理解:长度可变、数据类型可不同的动态数组。
- 数组长度固定,且数据类型单一,不满足需要动态的类型不同的数据组情况。如顾客购买记录。
- Map集合
存入的数据为一对key-value,key-value由一个Entry包裹。
方法 | 描述 |
---|---|
int size() | 判断集合长度 |
boolean isEmpty | 判断集合是否为空 |
boolean containsKey(Object key) | 判断是否存在某个key |
boolean containsValue(Object value) | 判断集合是否存在某个Value |
V get(Object key) | 取出集合中key对应的value |
V put(K key,V value) | 存入一组key-value元素 |
V remove(Object key) | 删除某个key对应的value |
void putAll(Map map) | 像集合中添加另一个Map |
void clear() | 清空集合 |
Set keySet() | 取出集合中的所有key,返回一个Set |
Collection values() | 取出集合中所有value,返回一个Collection |
Set <Map.Entry<k,v>> entrySet() | 将Map以Set的形式输出 |
int hashCode() | 获取集合的散列值 |
boolean equals(Object o) | 比较两个集合是否相等 |
- Map的实现类
- HashMap:存储一组为无序,key不重复,value可重复的元素。
- Hashtable:存储无序,key不重复,value可重复的元素。(注意这里t是小写),与HashMap区别是HashTable线程安全,HashMap线程不安全。
- TreeMap:存储一组有序(按照key排序),key不重复,value可重复的元素。