Map扩展知识:map集合被使用是因为具备映射关系。
学校、班级、学生(学号、姓名)
学校、班级、学号、姓名
代码1:
import java.util.*;
public class code
{
public static void main(String[] args) {
//一对多的关系
HashMap<String,HashMap<String, String>> xuexiao = new HashMap<String, HashMap<String, String>>();
HashMap<String, String> banji1 = new HashMap<String, String>();
HashMap<String, String> banji2 = new HashMap<String, String>();
banji1.put("01", "zhangsan");
banji1.put("02", "lisi");
banji2.put("01", "wangwu");
banji2.put("02", "zhaoliu");
xuexiao.put("1ban", banji1);
xuexiao.put("2ban", banji2);
Iterator<String> it = xuexiao.keySet().iterator();
while(it.hasNext()) {
String roomname = it.next();
HashMap<String, String> room = xuexiao.get(roomname);
//System.out.println(room);
getStu(room);
}
}
public static void getStu(HashMap<String,String> room) {
Iterator<String> it = room.keySet().iterator();
while(it.hasNext()) {
String id = it.next();
String name = room.get(id);
System.out.println(id+":"+name);
}
}
}
学校、班级、学生(学号、姓名)
代码2:
import java.util.*;
public class code
{
public static void main(String[] args) {
HashMap<String,List<Student>> xuexiao = new HashMap<String, List<Student>>();
List<Student> banji1 = new ArrayList<Student>();
List<Student> banji2 = new ArrayList<Student>();
xuexiao.put("banji1", banji1);
xuexiao.put("banji2", banji2);
banji1.add(new Student("01", "zhangsan"));
banji1.add(new Student("02", "lisi"));
banji2.add(new Student("01", "wangwu"));
banji2.add(new Student("02", "zhaoliu"));
Iterator<String> it = xuexiao.keySet().iterator();
while(it.hasNext()) {
String roomname = it.next();
List<Student> room = xuexiao.get(roomname);
System.out.println(roomname);
getStu(room);
}
}
public static void getStu(List<Student> list) {
Iterator<Student> it = list.iterator();
while(it.hasNext()) {
Student s = it.next();
System.out.println(s);
}
}
}
class Student
{
private String id;
private String name;
Student(String id,String name)
{
this.id = id;
this.name = name;
}
public String toString(){
return id+":"+name;
}
}