文章需求
某个班级80名学生,现在需要组成秋游活动,班长提供了四个景点依次是(A、B、C、D),每个学生只能选择一个景点,请统计出最终哪个景点想去的人数最多。
文章目录
- 分析
- 展示
- 代码展示
- 结果展示
- 总结
分析
将80个学生选择的数据拿到程序中去。
定义Map集合用于存储最终统计的结果。
遍历80个学生选择的数据,看Map集合中是否存在,不存在存入“数据=1“,存在则其对应值+1。。
一、展示
1.代码展示
根据题意知,统计八十个人想去景点名称,首先就要把80个人的选择的数据拿进来,代码如下:
String[] str={"A","B","C","D"};
StringBuilder sb =new StringBuilder();//拼接
Random r=new Random();//随机数
for (int i = 0; i < 80; i++) {
sb.append(str[r.nextInt(str.length)]);
}
System.out.println(sb);
接下来定义一个map集合,存放统计的结果,接下来遍历80个同学的选择的键,选择一次值+1
Map<Character,Integer> maps=new HashMap<>();
//遍历80个对象的信息
for (int i = 0; i < sb.length(); i++) {
char ch=sb.charAt(i);
//判断字符中是否存在这个键
if(maps.containsKey(ch)){
maps.put(ch, maps.get(ch)+1);
}else{
maps.put(ch,1);
}
}
System.out.println(maps);
2.结果展示
总结
例如:以上就是今天的内容,本文仅仅介绍了Map集合的案例,Map集合是一种双列集合,每个元素包含两个数据,一个是键,一个是值,Map集合的特点是由键决定的,集合的键无序、不重复、无索引,值不做要求(可以重复),Map集合后面重复的键对应的值会覆盖前面重复的键对应的值。