java:Map集合的编历

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
/*1,  使用map存放 以下  内容:  拼音 -- 省份中文 ; 并把它们遍历并打印出来
	  【目的】 理解什么是map; 能使用map存放集合
 * 2,使用map存放 以下内容:  省份 -- 市区(一个省份有一个或多个市区)【字符串数组】;之后,
 *    查一下该map中是否有 杭州 这个省份,如果有的话,把它相应的市区打印出来;
	  【目的】1.理解map中的泛型   2.理解map的其他调用方式:包括key 或value中是否有相应值  
	                     3.理解如何根据map的key值来获取 value值
 */
public class list1{
	public static void main(String[] args){	
		Map<String,Province> province = new HashMap<String,Province>();//新建一个map,一个存的是对象,一个存的是拼音
		//建几个省份和市,存进map里面
		String[][] zjarr= {{"浙江"},{"杭州","温州","宁波"}};
		String[][] sharr={{"上海市"},{"徐汇","静安","普陀"}};//定义两个二维数组
		
		
		Province p = new Province(12,zjarr);//省份是string  市有多个,应该是有个数组的形式
		Province p1 = new Province(15,sharr);
		//编历这个map
		//把对象加到map里面
		province.put("zj",p);//key value
		province.put("sh",p1);
		p.arrlist(province,"杭州");//ent是一个map   最后一步没有实现好
		
		
		
		
	}
}
class Province {
	int num;//省份有名字
	//有城市
	String[][] city;
	public Province(int num,String[][] city){
		//写一个公开的构造器
		this.num= num;
		this.city= city;
	}
	
	public int getNum() {
		return num;
	}

	public void setNum(int num) {
		this.num = num;
	}

	public String[][] getCity() {
		return city;
	}
	public void setCity(String[][] city) {
		this.city = city;
	}

	/**编历map的方法
	 * @param map
	 * @return
	 */
	public void arrlist(Map map,String ss){
		String s3=null;
		Set entry = map.entrySet();//有了map,把map给一个新的entry
		Iterator ite = entry.iterator();//再把entry给迭代器
		while(ite.hasNext()){//取得一个值,再next看有没有下一个值
			Entry obj=  (Entry) ite.next();//转为entry取值就不会报错
			Province pro =(Province) obj.getValue();
			s3=arraylist(pro.getCity());//把取出来的全部的信息编历数组给s3
			
			System.out.println(s3);
			
		}
	}
	public String arraylist(String[][] ss){//二维数组
		String s1 =null;
		for(String[] s:ss){//编历一次
			
			for(int i =0;i<s.length;i++){
			//System.out.print();
			s1+=s[i];//每编历一次,加到s1里面去
			}
			System.out.println(s1);
		}
		return s1;//取出来的结果有一个  null上海市...这个问题没有解决
	}
}

猜你喜欢

转载自blog.csdn.net/zoeou/article/details/53940354