1. 程式人生 > 實用技巧 >8.13Java入門--->第十九節(Map巢狀)

8.13Java入門--->第十九節(Map巢狀)

1、Map

儲存鍵值對,對映關係集合

KEY不可以重複,Key重複覆蓋原先的值

map的遍歷,Set set= map.entrySet,遍歷set,一個entry儲存一組鍵值對

Set set= map.keySet,遍歷set ,map.get(key)

map.containKey、map.containValue(map是否包含當前值,或當前Value)

LinkedHashMap:儲存有序

Hash Map:無序()

properties :操作屬性檔案,Mybatis ->db.properties

TreeMap:排序,和TreeSet一樣的

map巢狀,迴圈輸出

package
com.xian; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; public class Test81304 { public static void main(String[] args) { Map city=new HashMap(); Map spaceShangHai=new HashMap(); spaceShangHai.put("普陀區","伊敏路"); spaceShangHai.put("閔行區","南京東路"); spaceShangHai.put(
"松江區","幸福里路"); spaceShangHai.put("浦東區","赤峰路"); Map spaceBeijing=new HashMap(); spaceBeijing.put("大興區","機場"); spaceBeijing.put("昌平區","火車站"); spaceBeijing.put("朝陽區","新發地"); spaceBeijing.put("燕山區","大學城"); city.put("北京",spaceBeijing); city.put(
"上海",spaceShangHai); Entry(city); } public static void Entry(Map<String,Map<String,String>> mp3) { for (Object o:mp3.entrySet()) { Map.Entry<String,Map<String,String>> mp1= (Map.Entry<String, Map<String, String>>) o; String s=mp1.getKey(); Map mp2=mp1.getValue(); for (Object o1:mp2.entrySet()) { Map.Entry<String, String> mp4 = (Map.Entry<String, String>) o1; String s1=mp4.getKey(); String s2=mp4.getValue(); System.out.println(s+"市 "+s1+" "+s2); } } } }

第一層,一個Key對應一個map,提取出key,和對應的map

第二層,解析上一層對應的map

輸出:第一層對應的Key,第二層對應的Key,第二層的Value

每次解析一個,迴圈結束為止,多層巢狀同理

上海市 閔行區 南京東路
上海市 浦東區 赤峰路
上海市 松江區 幸福里路
上海市 普陀區 伊敏路
北京市 朝陽區 新發地
北京市 大興區 機場
北京市 燕山區 大學城
北京市 昌平區 火車站

堆溢位、棧溢位完全是兩個東西