Java Map如何根据key取value以及不指定key取出所有的value
根据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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
赞 (0)