編寫Java程序,使用List集合和Map集合輸出 市和區

如圖:

代碼:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;

public class Test1 {
		public static void main(String[] args) {
			//雲南省的 - 市
			ArrayList<String> ynCity = new ArrayList<>();
			ynCity.add("昆明市");
			ynCity.add("昭通市");
			ynCity.add("大理市");
			ynCity.add("麗江市");
			//湖南省的 - 市
			ArrayList<String> hnCity = new ArrayList<>();
			hnCity.add("長沙市");
			hnCity.add("岳陽市");
			hnCity.add("常德市");
			hnCity.add("永州市");
			//將市 和 區 存入Map集合
			HashMap<String, ArrayList<String>> provinceCity = new HashMap<String, ArrayList<String>>();
			provinceCity.put("雲南省",ynCity);
			provinceCity.put("湖南省",hnCity);
			//將省和市存入countries Map集合中
			HashMap<String, HashMap<String,ArrayList<String>>> countries = new HashMap<String,HashMap<String,ArrayList<String>>>();
			countries.put("中國",provinceCity);
//			countries.put("美國",provinceCity);//這裏只寫了中國的省和市這行註釋掉
			
			Set<String> countriesMapkey = countries.keySet();//得到Map 集合 countries的鍵 存入countriesMapkey中
			Iterator it1 = countriesMapkey.iterator();//用鍵創建一個迭代器
			while (it1.hasNext()) {
				Object countriesMapkeys = it1.next();//遍歷得到鍵集合存入countriesMapkeys
				System.out.println(countriesMapkeys);
				HashMap<String, ArrayList<String>> countriesMapValue = countries.get(countriesMapkeys);//得到鍵集合對應的值存入countriesMapValue
				Set<String> provinceCityMapKey = countriesMapValue.keySet();//得到Map集合中provinceCity的鍵
				
				Iterator it2 =  provinceCityMapKey.iterator();//創建一個迭代器
				while (it2.hasNext()) {
					Object provinceCityMapKeys = it2.next();//得到Map 集合 provinceCity的鍵 存入countriesMapkey中
					System.out.println("    "+provinceCityMapKeys);
					ArrayList<String> provinceCityValue = provinceCity.get(provinceCityMapKeys);//得到provinceCity的鍵對應的值集合
					for (int i = 0; i < provinceCityValue.size(); i++) {
						System.out.println("        "+provinceCityValue.get(i));//循環輸出provinceCity的值
					}
				}
			}
			
		}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章