首页 > 编程 > Java > 正文

Java Map如何根据key取value以及不指定key取出所有的value

2019-11-26 08:38:09
字体:
来源:转载
供稿:网友

根据key取其value

Map<String, String> map = new HashMap<String, String>();    map.put("b", "4");    map.put("a", "5");    map.put("c", "3");    map.put("d", "5");   // 根据key获取 其value    System.out.println("通过key获取 其value");    System.out.println("key 'what'的value为:"+map.get("a")+"/n");

不知key取map里的value值――用map.keySet()

 //map.keySet() 先获取map对象的所有key值,再循环遍历获取各个key对应的value;    System.out.print("通过 map.keySet() 得到key,然后获取value/n");    for(String key : map.keySet()){      String value = map.get(key);      System.out.println(key+" "+value);    }

不知key取map里的value值――用Iterator 迭代

//使用迭代器,获取key;    System.out.print("通过迭代器,获取key,然后获取value/n");    Iterator<String> iter = map.keySet().iterator();    while(iter.hasNext()){      String key=iter.next();      String value = map.get(key);      System.out.println(key+" "+value);    }

不知key取map里的value值――用map.entrySet()

    //通过map.entrySet()方法    System.out.print("通过map.entrySet()循环map里面的每一对键值对,然后获取key和value/n");    for(Map.Entry<String, String> vo : map.entrySet()){      vo.getKey();      vo.getValue();      System.out.println(vo.getKey()+" "+vo.getValue());    }

源码

public class Maptest {  public static void main(String[] args) {    Map<String, String> map = new HashMap<String, String>();    map.put("b", "4");    map.put("a", "5");    map.put("c", "3");    map.put("d", "5");    // 获取指定 key 的value    System.out.println("通过key获取 其value");    System.out.println("key 'what'的value为:"+map.get("a")+"/n");    // 获取map的所有key    System.out.print("获取map的所有key/n");    System.out.print("map.keySet():"+map.keySet()+"/n");    //获取map中所有 value    System.out.print("获取map中所有 value/n");    System.out.print("map.values():"+ map.values()+"/n");    //通过 map.keySet() 得到key的值,然后获取value;    System.out.print("通过 map.keySet() 得到key,然后获取value/n");    for(String key : map.keySet()){      String value = map.get(key);      System.out.println(key+" "+value);    }    //使用迭代器,获取key;    System.out.print("通过迭代器,获取key,然后获取value/n");    Iterator<String> iter = map.keySet().iterator();    while(iter.hasNext()){      String key=iter.next();      String value = map.get(key);      System.out.println(key+" "+value);    }    //通过map.entrySet()方法    System.out.print("通过map.entrySet()循环map里面的每一对键值对,然后获取key和value/n");    for(Map.Entry<String, String> vo : map.entrySet()){      vo.getKey();      vo.getValue();      System.out.println(vo.getKey()+" "+vo.getValue());    }}}

运行结果

通过key获取 其value
key 'a'的value为:5
获取map的所有key
map.keySet():[a, b, c, d]
获取map中所有 value
map.values():[5, 4, 3, 5]
通过 map.keySet() 得到key,然后获取value
a  5
b  4
c  3
d  5
通过迭代器,获取key,然后获取value
a 5
b 4
c 3
d 5
通过map.entrySet()循环map里面的每一对键值对,然后获取key和value
a  5
b  4
c  3
d  5

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表