Java中关于Map四种取值方式
作者:于歌852
这篇文章主要介绍了Java中关于Map四种取值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Java关于Map的四种取值方式
map的主要作用是什么?
可以通过创建一个map的实现类 来存放 数据 值 和值的描述 也可以通过描述去取得数据
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。
此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。
Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如 TreeMap 类;另一些映射实现则不保证顺序,如HashMap 类。
Map的取值方式主要有4种:
1.keySet二次取值;
2.entrySet使用iterator遍历key和value
3.entrySet遍历key和value
4.通过Map.values()遍历所有的value,但不能遍历key
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("1", "value1"); map.put("2", "value2"); map.put("3", "value3"); // 第一种方法:普遍使用,二次取值 System.out.println("通过Map.keySet遍历key和value:"); for (String key : map.keySet()) { System.out.println("key= " + key + " and value= " + map.get(key)); } // 第二种方法: System.out.println("通过Map.entrySet使用iterator遍历key和value:"); Iterator<Map.Entry<String, String>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, String> entry = it.next(); System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } // 第三种方法:推荐,尤其是容量大时 System.out.println("通过Map.entrySet遍历key和value"); for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } // 第四种方法: System.out.println("通过Map.values()遍历所有的value,但不能遍历key"); for (String v : map.values()) { System.out.println("value= " + v); } }
Java中Map取值转String Null值处理
Map<String, Object> 直接取值转String
String value = (String)map.get("key")
当map.get(“key”)为Null值时会报错。
使用String类的valueOf静态方法可以解决这个问题
String value = String.valueOf(map.get("key"))
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。