Map小结

来源:互联网 发布:戒毒所 人工智能 编辑:程序博客网 时间:2024/05/18 22:42

Map与Collection的区别

1.Collection集合每次采用add()方法添加单个元素,是单列集合,Map使用put()方法每次添加一对值,前一个为键,后一个为值,键与值为映射关系,是双列集合
2.一个键只能对应一个值,键不能重复,一个值可以对应多个键,值可以重复。一个键和它对应的一个值共同构成Map中的一个元素
3.Collection可以直接利用get()方法取出值,但Map不能,Map只能先转化为set集合,在使用迭代器获取元素

Map方法

1.map.put(K key,V value);添加一对映射进map,返回值为key之前对应的值,如果之前没有对应的值就返回null

2.map.putAll(Map map2);把map2中的映射存入map中

3.map.remove(K key);删除key对应的那对映射,返回删除映射中的值

4.map.clear();清空map

5.map.get(K key);获取对应key的值,key不存在时返回null

6.map.isEmpty();返回布尔值,检查map是否为空

7.map.containsKey(K key);检查map中是否有键key,返回布尔值

8.map.containValue(V value);检查map中是否有值value,返回布尔值

9.map.size();饭回一个int值,为map中的数据量

Map迭代的方法

1.map.keySet();返回一个set< K >的集合,包含map里面的所有键 ,并可以通过键调用map.get(K key)方法来获取其对应的值

2.map.value();返回一个Collection< V >的集合,包含map里面所有的值

3.Set< Map.Entry< K,V > > set=map.entrySet();用该方法返回一个集合,储存的是对象,每个对象都存储了一对映射,可通过迭代器,迭代每一个对象使用getKey(),getValue()来获得键和值。

HashMap

特点:底层使用哈希表数据结构,线程不同步,可以存null键和值,若要保证键的唯一性,需要重写hashCode()和equals()方法,存入数据是先看键的哈希码,如果对应表格中没有对应元素,直接储存,有哈希值相等的元素就使用equals()方法比较两个值,返回ture则无法储存相同键,返回false就把两组元素存在一个表里面

TreeMap

和TreeSet类型,具有有序性,对于有自然序列的数据可以直接排序,但对应不具备自然顺序的数据,使用实现comparable或者comparator接口,来进行排序

原创粉丝点击