一、将string转换成hashmap
String str = "requestid=97&_workflowid=230&_workflowtype=&isovertime=0&preloadkey=1502342729232&_key=oyqdqq&field6322=1317%20&_t=1502340708152";
String[] strs = str.split("&");
Map<String, String> m = new HashMap<String, String>();
for(String s:strs){
String[] ms = s.split("=");
m.put(ms[0], ms[1]);
}
System.out.println(m.toString());
二、Map<String, String> 遍历的四种方法
Map<String, String> map = new HashMap<String, String>();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "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());
}
<span style="color:#FF0000;"> //第三种:推荐,尤其是容量大时</span>
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);
}
网友评论