学习笔记-Map映射

来源:互联网 发布:js数组去重方法 编辑:程序博客网 时间:2024/05/21 10:37

Map
Map是Java JDK提供的一个接口,通过键值对的映射关系存储数据。

  • 一个键只能对应一个值
  • 一个值可以对应多个键
  • Map提供了三种Collection视图:键集、值集、键-值映射集,分别有方法KeySet()、ValueSet()和entrySet()实现

    Map常用的实现类如下图:
    这里写图片描述
    HashMap
    public class HashMap<K,V> extends AbstractMap<K,V>implements Map<K,V>, Cloneable, Serializable
    HashMap是以Hash表存储的映射,元素是无序的,允许null键和null值元素。
    如下所示,证明HashMap是无序的:

import java.util.*;public class Main {    public static void main(String[] args) {        //HashMap是无序的        Map<String,String> testHashMap = new HashMap<String, String>();        testHashMap.put("one","Vivi");        testHashMap.put("two","Johny");        testHashMap.put("three","Zhan");        testHashMap.put("four","Chuan");        testHashMap.put("five","Zfan");        System.out.println(testHashMap);    }}

运行结果:

{two=Johny, five=Zfan, one=Vivi, three=Zhan, four=Chuan}     Process finished with exit code 0

由此可见,HashMap是无序的。
LinkedHashMap
public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>
LinkedHashMap是Map映射的一个实现类,实现了列表和链表。其存储数据是有序的,根据插入的顺序存储。
常用的方法有:
containsValue(value):映射中包括value值,返回true。
get(key):通过key取得键。

阅读全文
1 0
原创粉丝点击