您的位置:首页 > 编程语言 > Java开发

java学习之Map集合

2015-09-17 19:11 295 查看
Map集合:可以存储键值对的元素。将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值。

Map集合和Collection集合的区别?

Map集合存储元素是成对出现的,Mao集合的键是唯一的,值是可重复的。可以把这个理解为:***对

Collection集合存储元素是单独出现的。Collection的儿子Set是唯一的。List是可重复的。可以把这个理解为:光棍。

注意:

• Map集合的数据结构值针对键有效,跟值无关

Collection集合的数据结构是针对元素有效

Map集合功能:

1.添加

V put(K key,V value):添加元素。这个其实还有另一个功能:

如果键是第一次存储,就直接存储,返回null,如果键不是第一次存储,就用当前值替换以前的值,并返回以前的值。

2.删除

void clear():移除所有的键值对元素。

V remove(Object key):根据键删除键值对元素,并把值返回

3.判断

boolean containsKey(Object Key):判断集合是否包含指定的键

boolean containsValue(Object
value):判断集合是否包含指定的值

4.获取

Set<Map.Entry<K,V>>
entrySet():返回的是键值对对象


V get(Object key):根据键获取值


Set<K> keySet():获取集合中所有键的集合


Collection<V> values():获取集合中所有值的集合


5.长度

int size():返回集合中的键值对对数。

HashMap:是基于哈希表的Map接口实现。

哈希表的作用是用来保证键的唯一性。

如果键的类型为String或者Integer等重写了hashCode和equals方法时,能保证键的唯一

如果键的类型为自定义对象时,必须对此对象重写hashCode和equals方法才能保证键的唯一。

LinkedHashMap:是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。

由哈希表保证键的唯一性,由链表保证键的有序。(存储和取出顺序一致)

TreeMap类概述:键是红黑树结构,可以保证键的排序和唯一性。
实现键的空参Comparable接口,重写compareTo方法或者Comparator接口,重写compare方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: