集合フレーム_集合多層ネストのコード表現


package cn.itcast_06;

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

/*
 *        :
 * 		             。
 * 
 *     
 * 		bj	    
 * 			jc	   
 * 					   	27
 * 					   	30
 * 			jy	   	
 * 					   	28
 * 					  		29
 * 		sh	    
 * 			jc	   
 * 					   	20
 * 					   	22
 * 			jy	   	
 * 					   	21
 * 					  		23
 * 		gz	    
 * 			jc	   
 * 					   	30
 * 					   	32
 * 			jy	   	
 * 					  		31
 * 					  		33
 * 		xa	    
 * 			jc	   
 * 					   	27
 * 					   	30
 * 			jy	   	
 * 					   	28
 * 					   	29
 */
public class HashMapDemo {
	public static void main(String[] args) {
		//      
		HashMap>> bdqnMap = new HashMap>>();

		//     
		HashMap> bjBdqnMap = new HashMap>();
		ArrayList bj_jcArray = new ArrayList();
		Student bj_s1 = new Student("   ", 27);
		Student bj_s2 = new Student("   ", 30);
		bj_jcArray.add(bj_s1);
		bj_jcArray.add(bj_s2);
		bjBdqnMap.put("   ", bj_jcArray);
		ArrayList bj_jyArray = new ArrayList();
		Student bj_s3 = new Student("   ", 28);
		Student bj_s4 = new Student("  ", 29);
		bj_jyArray.add(bj_s3);
		bj_jyArray.add(bj_s4);
		bjBdqnMap.put("   ", bj_jyArray);
		bdqnMap.put("    ", bjBdqnMap);

		//     
		HashMap> shBdqnMap = new HashMap>();
		ArrayList sh_jcArray = new ArrayList();
		Student sh_s1 = new Student("   ", 20);
		Student sh_s2 = new Student("   ", 22);
		sh_jcArray.add(sh_s1);
		sh_jcArray.add(sh_s2);
		shBdqnMap.put("   ", sh_jcArray);
		ArrayList sh_jyArray = new ArrayList();
		Student sh_s3 = new Student("   ", 21);
		Student sh_s4 = new Student("  	", 23);
		sh_jyArray.add(sh_s3);
		sh_jyArray.add(sh_s4);
		shBdqnMap.put("   ", sh_jyArray);
		bdqnMap.put("    ", shBdqnMap);

		//     
		HashMap> gzBdqnMap = new HashMap>();
		ArrayList gz_jcArray = new ArrayList();
		Student gz_s1 = new Student("   ", 30);
		Student gz_s2 = new Student("   ", 32);
		gz_jcArray.add(gz_s1);
		gz_jcArray.add(gz_s2);
		gzBdqnMap.put("   ", gz_jcArray);
		ArrayList gz_jyArray = new ArrayList();
		Student gz_s3 = new Student("  ", 31);
		Student gz_s4 = new Student("  ", 33);
		gz_jyArray.add(gz_s3);
		gz_jyArray.add(gz_s4);
		gzBdqnMap.put("   ", gz_jyArray);
		bdqnMap.put("    ", gzBdqnMap);

		//     
		HashMap> xaBdqnMap = new HashMap>();
		ArrayList xa_jcArray = new ArrayList();
		Student xa_s1 = new Student("   ", 27);
		Student xa_s2 = new Student("   ", 30);
		xa_jcArray.add(xa_s1);
		xa_jcArray.add(xa_s2);
		xaBdqnMap.put("   ", xa_jcArray);
		ArrayList xa_jyArray = new ArrayList();
		Student xa_s3 = new Student("   ", 28);
		Student xa_s4 = new Student("   ", 29);
		xa_jyArray.add(xa_s3);
		xa_jyArray.add(xa_s4);
		xaBdqnMap.put("   ", xa_jyArray);
		bdqnMap.put("    ", xaBdqnMap);

		//     
		Set bdqnMapSet = bdqnMap.keySet();
		for (String bdqnMapKey : bdqnMapSet) {// bdqnMapKey  
			System.out.println(bdqnMapKey + "\t");
			HashMap> bdqnMapValue = bdqnMap
					.get(bdqnMapKey);
			Set bdqnMapValueSet = bdqnMapValue.keySet();
			for (String bdqnMapValueKey : bdqnMapValueSet) {// bdqnMapValueKey  
				System.out.println("\t" + bdqnMapValueKey + "\t");
				ArrayList array = bdqnMapValue.get(bdqnMapValueKey);
				for (Student stu : array) {// array  
					System.out.println("\t\t" + stu.getName() + "---"
							+ stu.getAge());
				}
			}
		}
	}
}