---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
1. Map也是一个集合,只是是以键值对存储的,常见的子类有Hashtable,HashMap,TreeMap。
1.Map集合的添加、判断、删除。
2.获取单个元素
1.获取键对应的值
2.获取键的集合
3.获取值的集合
4.通过映射关系获取
计算字符串中字符的个数,并且输出格式:a(1)b(3)c(4)….
思路:
1.把字符串转化成字符数组后,然后开始遍历数组
2.在遍历的时候,没读取一个字符,然后在集合中查看,如果存在则读取出来,然后数量加1,然后在存入里面如果没有,则添加里面,数量是1.
3.输出格式,读取集合然后拼接字符串,利用StringBuffer。
4.模拟学校,然后读取学校中班级—学生信息
利用的是集合中嵌套集合
package it.cast.MapTest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
class collegeStudent{
private String num;
private String name;
public collegeStudent(String num,String name){
super();
this.num=num;
this.name=name;
}
public String getNum(){
return num;
}
public String getName(){
return name;
}
}
public class MapDome7 {
public static void main(String[] args) {
/*学校*/
HashMap<String ,List<collegeStudent>> bdxy=new HashMap<String,List<collegeStudent>>();
List<collegeStudent> ruanjian=new ArrayList<collegeStudent>();//软件班级
List<collegeStudent> jiying=new ArrayList<collegeStudent>();//计应班
/*把班级添加到学校中*/
bdxy.put("ruanjian", ruanjian);
bdxy.put("jiying", jiying);
/*向班级中添加学生*/
ruanjian.add(new collegeStudent("110","张三"));
ruanjian.add(new collegeStudent("111","李四"));
ruanjian.add(new collegeStudent("112","王五"));
jiying.add(new collegeStudent("210","xiaoqiang"));
jiying.add(new collegeStudent("211","wangcai"));
jiying.add(new collegeStudent("222","xiaowu"));
/*遍历学校中的班级,读取出班级中的学生信息*/
Set<String> set=bdxy.keySet();//读取学校中的班级集合;
Iterator<String> it=set.iterator();
while (it.hasNext()){
String classname=it.next();
List<collegeStudent> classinfo=bdxy.get(classname);
System.out.println(classname);
show(classinfo);
}
}
/*输出班级的学生*/
public static void show(List<collegeStudent> list) {
Iterator<collegeStudent> it=list.iterator();
while (it.hasNext()){
collegeStudent stu=it.next();
System.out.println(" |-"+stu.getNum()+":"+stu.getName());
}
}
}
运行结果:
jiying
|-210:xiaoqiang
|-211:wangcai
|-222:xiaowu
ruanjian
|-110:张三
|-111:李四
|-112:王五
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------