30.5 Map遍历方法
package day30_2_Map; import java.util.HashMap; import java.util.Map; import java.util.Set; /* 方法一、用entrySet直接遍历映射关系 方法二、map.keySet()获取所有key,再根据key拿到value * Set<Map.Entry<K,V>> entrySet() :返回此映射中包含的 <K,V> 映射关系的 Set 视图 * */ public class MapDemo3_遍历 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("test001","zhangsan"); map.put("test002","lisi"); map.put("test003","wangwu"); //获取所有键值映射关系 Set<Map.Entry<String,String>> entrys = map.entrySet(); System.out.println(entrys); for (Map.Entry<String,String> ent:entrys) { // System.out.println(ent); String key = ent.getKey(); String value = ent.getValue(); System.out.println("k键:" + key + "---" + " v值:" + value); } } }
输出;
/* * Set<K> keySet() :返回此映射中包含的 K 键的 Set 视图。 * Collection<V> values() :返回此映射中包含的 V 值的 Collection 视图 * */ public class MapDemo4_遍历方法二 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("test001","zhangsan"); map.put("test002","lisi"); map.put("test003","wangwu"); Set<String> set = map.keySet(); // System.out.println(set); for(String sets :set) { System.out.println("k:" + sets + "---" + "v:" + map.get(sets)); } } }
拓展应用:
利用map遍历取json中的数据 mport com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.TypeReference; import java.util.*; public class Main { public static void main(String[] args) { String jsons = "{\n" + " \"code\": null,\n" + " \"message\": \"项目Token不存在,请检查'\",\n" + " \"data\": {}\n" + "}"; JSONObject jsonObject = JSON.parseObject(jsons); System.out.println(jsonObject.toJSONString()); System.out.println("----------------------"); // System.out.println(jsonObject.get("code")); // System.out.println(jsonObject.get("message")); // System.out.println(jsonObject.get("data")); Map<String,String> signMap = JSON.parseObject(jsons, new TypeReference<Map<String,String>>(){}); for (Map.Entry<String,String> entry: signMap.entrySet() ) { System.out.println(entry.getKey() + "=" + entry.getValue()); CommonResult<Object> objResult = new CommonResult<>(); } }
输出: