已知字符串String s=解梓n + 闫励鑫n + 王炳权n + 狄泉宇n + 杨士豪n + 王帅雨n + 刘亚隆n + 高蒙蒙n + 王鑫n + 闫一帆n + 郭江炜n + 靳炎睿n + 成宗汶n + 王志豪n +
- 找出班级所有姓氏
String[] names = s.split("\n");
List<String> lastNames = new ArrayList<>();
for(String name : names){
String lastName = name.substring(0,1);
lastNames.add(lastName);
}
- 将每个姓氏的学生找出,各自放入List集合;组合成一个List<List
>集合
List<List<String>> studentsByLastName = new ArrayList<>();
for(String lastName : lastNames){
List<String> students = new ArrayList<>();
for(String name : names){
if(name.startsWith(lastName)){
students.add(name);
}
}
studentsByLastName.add(students);
}
- 找出学生最多的姓氏是什么,有多少人
int maxCount = 0;
String maxLastName = "";
for(List<String> students : studentsByLastName){
int count = students.size();
if(count > maxCount){
maxCount = count;
maxLastName = students.get(0).substring(0,1);
}
}
System.out.println("姓氏为" + maxLastName + "的学生最多,共" + maxCount + "人");
4)有哪些姓氏,只有一名同学
List<String> lonelyLastNames = new ArrayList<>();
for(List<String> students : studentsByLastName){
if(students.size() == 1){
lonelyLastNames.add(students.get(0).substring(0,1));
}
}
System.out.println("只有一名同学的姓氏有:" + lonelyLastNames);
``
原文地址: http://www.cveoy.top/t/topic/fgWy 著作权归作者所有。请勿转载和采集!