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<String, HashMap<String, ArrayList<Student>>> bdqnMap = new HashMap<String, HashMap<String, ArrayList<Student>>>();

// 北京校区
HashMap<String, ArrayList<Student>> bjBdqnMap = new HashMap<String, ArrayList<Student>>();
ArrayList<Student> bj_jcArray = new ArrayList<Student>();
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<Student> bj_jyArray = new ArrayList<Student>();
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<String, ArrayList<Student>> shBdqnMap = new HashMap<String, ArrayList<Student>>();
ArrayList<Student> sh_jcArray = new ArrayList<Student>();
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<Student> sh_jyArray = new ArrayList<Student>();
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<String, ArrayList<Student>> gzBdqnMap = new HashMap<String, ArrayList<Student>>();
ArrayList<Student> gz_jcArray = new ArrayList<Student>();
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<Student> gz_jyArray = new ArrayList<Student>();
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<String, ArrayList<Student>> xaBdqnMap = new HashMap<String, ArrayList<Student>>();
ArrayList<Student> xa_jcArray = new ArrayList<Student>();
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<Student> xa_jyArray = new ArrayList<Student>();
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<String> bdqnMapSet = bdqnMap.keySet();
for (String bdqnMapKey : bdqnMapSet) {// bdqnMapKey校区
System.out.println(bdqnMapKey + "\t");
HashMap<String, ArrayList<Student>> bdqnMapValue = bdqnMap
.get(bdqnMapKey);
Set<String> bdqnMapValueSet = bdqnMapValue.keySet();
for (String bdqnMapValueKey : bdqnMapValueSet) {// bdqnMapValueKey班级
System.out.println("\t" + bdqnMapValueKey + "\t");
ArrayList<Student> array = bdqnMapValue.get(bdqnMapValueKey);
for (Student stu : array) {// array学生
System.out.println("\t\t" + stu.getName() + "---"
+ stu.getAge());
}
}
}
}
}