今天就跟大家聊聊有关使用Java map 实现元素遍历,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
Java 8 , Lambda + foreach 语法糖, 写起来非常的 clean
public static void main(String[] args) { // map init Map<String, String> map = new HashMap<>(); map.put("k", "v"); /*=====处理函数只有单条语句=====*/ map.forEach((k, v) -> System.out.println(k + v)); /*=====处理函数有多个步骤=======*/ map.forEach((k, v) -> { System.out.println(111); System.out.println(k + v); }); }
补充知识:java 遍历Map 和 根据Map的值(value)取键(key)
看代码吧~
public static void main(String[] args) { // Map<String, Object> map = new HashMap<String, Object>(); Map<String, Object> map = new LinkedHashMap<String, Object>(); map.put("username","zhaokuo"); map.put("password", "123456"); map.put("email", "zhaokuo719@163.com"); map.put("sex", "男"); //第一种 用for循环的方式 for (Map.Entry<String, Object> m :map.entrySet()) { System.out.println(m.getKey()+"\t"+m.getValue()); } //利用迭代 (Iterator) Set set=map.entrySet(); Iterator iterator=set.iterator(); while(iterator.hasNext()){ Map.Entry<String, Object> enter=(Entry<String, Object>) iterator.next(); System.out.println(enter.getKey()+"\t"+enter.getValue()); } //利用KeySet 迭代 Iterator it = map.keySet().iterator(); while(it.hasNext()){ String key; String value; key=it.next().toString(); value=(String) map.get(key); System.out.println(key+"--"+value); } //利用EnterySet迭代 Iterator i=map.entrySet().iterator(); System.out.println( map.entrySet().size()); String key; String value; while(i.hasNext()){ Map.Entry entry = (Map.Entry)i.next(); key=entry.getKey().toString(); value=entry.getValue().toString(); System.out.println(key+"===="+value); } System.out.println(getKeyByValue(map, "zhaokuo")); }
//根据Value取Key public static String getKeyByValue(Map map, Object value) { String keys=""; Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Entry) it.next(); Object obj = entry.getValue(); if (obj != null && obj.equals(value)) { keys=(String) entry.getKey(); } } return keys; }
看完上述内容,你们对使用Java map 实现元素遍历有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。