哈希表Map

以下内容摘自Java程序设计(基础、编程抽象和算法设计)

 

在Java集合框架中,Map是一个接口,必须用实现了Map接口的具体类来创建对象。集合库中包含了两种这样的类:HashMap和TreeMap。我们今天只介绍HashMap。

方法:

1、创建对象:

Map<Integer, Integer> hashmap = new HashMap<Integer, Integer>();

这个定义会创建不包含任何键和值的空映射表

 

2、Map接口的常用方法

hashmap.size()    //返回键-值对的数量
hashmap.isEmpty()       //判断是否非空
hashmap.put(key, value)    //创建键-值关联
hashmap.get(key)  //返回与键相关的值
hashmap.getOrDefault(key, defaultValue) //与get类似,如果没此键,返回defaultValue
hashmap.remove(key)    //移除key及相关的值;如果没有,则忽略
hashmap.containsKey(key)  //true/false
hashmap.clear(); //清除所有键值对
hashmap.keySet() //返回哈希表中所有键构成的集合

 

3、遍历

System.out.println("\n通过Map.keySet遍历key和value:");  
for(String key:map.keySet()) {
   System.out.println("Key: "+key+" Value: "+map.get(key));
}
Iterator it = map.keySet().iterator();
        while (it.hasNext()) {
            key = (String) it.next();
            value = (String) map.get(key);
            System.out.println("key:" + key + "---" + "value:" + value);
        }

Map中采用Entry内部类来表示一个映射项,映射项包含Key和Value
Map.Entry里面包含getKey()和getValue()方法

 // 遍历map-原始方法
for (Map.Entry<String, Integer> entry : maps.entrySet()) {
    System.out.println("key:" + entry.getKey() + ";value:" + entry.getValue());
}

 

参考链接

 

posted @ 2020-11-02 12:23  Peterxiazhen  阅读(305)  评论(0编辑  收藏  举报