package day11.demo01;
import java.util.ArrayList;
public class StudentTest {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("1500100001,施笑槐,22,女,文科六班");
list.add("1500100002,吕金鹏,24,男,文科六班");
list.add("1500100003,单乐蕊,22,女,理科六班");
list.add("1500100004,葛德曜,24,男,理科三班");
list.add("1500100005,宣谷芹,22,女,理科五班");
list.add("1500100006,边昂雄,21,男,理科二班");
list.add("1500100007,尚孤风,23,女,文科六班");
list.add("1500100008,符半双,22,女,理科六班");
list.add("1500100009,沈德昌,21,男,理科一班");
list.add("1500100010,羿彦昌,23,男,理科六班");
list.add("1500100011,宰运华,21,男,理科三班");
list.add("1500100012,梁易槐,21,女,理科一班");
list.add("1500100013,逯君昊,24,男,文科二班");
list.add("1500100014,羿旭炎,23,男,理科五班");
list.add("1500100015,宦怀绿,21,女,理科一班");
list.add("1500100016,潘访烟,23,女,文科一班");
list.add("1500100017,高芷天,21,女,理科五班");
list.add("1500100018,骆怜雪,21,女,文科六班");
list.add("1500100019,娄曦之,24,男,理科三班");
list.add("1500100020,杭振凯,23,男,理科四班");
list.add("1500100021,连鸿晖,22,男,理科六班");
list.add("1500100022,薄运珧,23,男,文科四班");
list.add("1500100023,东鸿畴,23,男,理科二班");
list.add("1500100024,湛慕卉,22,女,文科二班");
list.add("1500100025,翁飞昂,22,男,文科四班");
ArrayList<String> list1 = new ArrayList<>();
list1.add("1500100001,1000001,98");
list1.add("1500100001,1000002,5");
list1.add("1500100001,1000003,137");
list1.add("1500100001,1000004,29");
list1.add("1500100001,1000005,85");
list1.add("1500100001,1000006,52");
list1.add("1500100002,1000001,139");
list1.add("1500100002,1000002,102");
list1.add("1500100002,1000003,44");
list1.add("1500100002,1000004,18");
list1.add("1500100002,1000005,46");
list1.add("1500100002,1000006,91");
list1.add("1500100003,1000001,48");
list1.add("1500100003,1000002,132");
list1.add("1500100003,1000003,41");
list1.add("1500100003,1000007,32");
list1.add("1500100003,1000008,7");
list1.add("1500100003,1000009,99");
list1.add("1500100004,1000001,147");
list1.add("1500100004,1000002,69");
list1.add("1500100004,1000003,37");
list1.add("1500100004,1000007,87");
list1.add("1500100004,1000008,21");
list1.add("1500100004,1000009,60");
list1.add("1500100005,1000001,105");
list1.add("1500100005,1000002,105");
list1.add("1500100005,1000003,30");
list1.add("1500100005,1000007,68");
list1.add("1500100005,1000008,38");
list1.add("1500100005,1000009,49");
list1.add("1500100006,1000001,87");
list1.add("1500100006,1000002,98");
list1.add("1500100006,1000003,55");
list1.add("1500100006,1000007,44");
list1.add("1500100006,1000008,1");
list1.add("1500100006,1000009,29");
list1.add("1500100007,1000001,102");
list1.add("1500100007,1000002,149");
list1.add("1500100007,1000003,83");
list1.add("1500100007,1000004,21");
list1.add("1500100007,1000005,25");
list1.add("1500100007,1000006,38");
list1.add("1500100008,1000001,5");
list1.add("1500100008,1000002,129");
list1.add("1500100008,1000003,110");
list1.add("1500100008,1000007,47");
list1.add("1500100008,1000008,40");
list1.add("1500100008,1000009,32");
list1.add("1500100009,1000001,65");
list1.add("1500100009,1000002,71");
list1.add("1500100009,1000003,38");
list1.add("1500100009,1000007,57");
list1.add("1500100009,1000008,17");
list1.add("1500100009,1000009,3");
list1.add("1500100010,1000001,98");
list1.add("1500100010,1000002,142");
list1.add("1500100010,1000003,50");
list1.add("1500100010,1000007,6");
list1.add("1500100010,1000008,44");
list1.add("1500100010,1000009,62");
list1.add("1500100011,1000001,42");
list1.add("1500100011,1000002,117");
list1.add("1500100011,1000003,80");
list1.add("1500100011,1000007,13");
list1.add("1500100011,1000008,26");
list1.add("1500100011,1000009,4");
list1.add("1500100012,1000001,62");
list1.add("1500100012,1000002,96");
list1.add("1500100012,1000003,99");
list1.add("1500100012,1000007,59");
list1.add("1500100012,1000008,89");
list1.add("1500100012,1000009,54");
list1.add("1500100013,1000001,113");
list1.add("1500100013,1000002,58");
list1.add("1500100013,1000003,68");
list1.add("1500100013,1000004,29");
list1.add("1500100013,1000005,48");
list1.add("1500100013,1000006,53");
list1.add("1500100014,1000001,148");
list1.add("1500100014,1000002,64");
list1.add("1500100014,1000003,94");
list1.add("1500100014,1000007,31");
list1.add("1500100014,1000008,39");
list1.add("1500100014,1000009,20");
list1.add("1500100015,1000001,101");
list1.add("1500100015,1000002,28");
list1.add("1500100015,1000003,119");
list1.add("1500100015,1000007,28");
list1.add("1500100015,1000008,9");
list1.add("1500100015,1000009,24");
list1.add("1500100016,1000001,19");
list1.add("1500100016,1000002,80");
list1.add("1500100016,1000003,40");
list1.add("1500100016,1000004,57");
list1.add("1500100016,1000005,76");
list1.add("1500100016,1000006,87");
list1.add("1500100017,1000001,37");
list1.add("1500100017,1000002,63");
list1.add("1500100017,1000003,92");
list1.add("1500100017,1000007,9");
list1.add("1500100017,1000008,53");
list1.add("1500100017,1000009,9");
list1.add("1500100018,1000001,25");
list1.add("1500100018,1000002,47");
list1.add("1500100018,1000003,117");
list1.add("1500100018,1000004,89");
list1.add("1500100018,1000005,72");
list1.add("1500100018,1000006,75");
list1.add("1500100019,1000001,108");
list1.add("1500100019,1000002,125");
list1.add("1500100019,1000003,68");
list1.add("1500100019,1000007,42");
list1.add("1500100019,1000008,85");
list1.add("1500100019,1000009,5");
list1.add("1500100020,1000001,38");
list1.add("1500100020,1000002,65");
list1.add("1500100020,1000003,91");
list1.add("1500100020,1000007,25");
list1.add("1500100020,1000008,30");
list1.add("1500100020,1000009,46");
list1.add("1500100021,1000001,47");
list1.add("1500100021,1000002,21");
list1.add("1500100021,1000003,31");
list1.add("1500100021,1000007,14");
list1.add("1500100021,1000008,5");
list1.add("1500100021,1000009,85");
list1.add("1500100022,1000001,29");
list1.add("1500100022,1000002,15");
list1.add("1500100022,1000003,116");
list1.add("1500100022,1000004,31");
list1.add("1500100022,1000005,4");
list1.add("1500100022,1000006,66");
list1.add("1500100023,1000001,35");
list1.add("1500100023,1000002,89");
list1.add("1500100023,1000003,125");
list1.add("1500100023,1000007,11");
list1.add("1500100023,1000008,25");
list1.add("1500100023,1000009,12");
list1.add("1500100024,1000001,69");
list1.add("1500100024,1000002,135");
list1.add("1500100024,1000003,69");
list1.add("1500100024,1000004,2");
list1.add("1500100024,1000005,56");
list1.add("1500100024,1000006,12");
list1.add("1500100025,1000001,54");
list1.add("1500100025,1000002,88");
list1.add("1500100025,1000003,8");
list1.add("1500100025,1000004,5");
list1.add("1500100025,1000005,55");
list1.add("1500100025,1000006,36");
/**
* 要求总分:先求成绩总和再加入到学生成绩中
*/
//将id分组求出
ArrayList<String> id = new ArrayList<>();
for (String s : list1) {
if (!id.contains(s.split(",")[0])) {
id.add(s.split(",")[0]);
}
}
//将id和总分划分为一个新的列表
ArrayList<String> sIdScore = new ArrayList<>();
for (String sid : id) {
int sum = 0;
for (String stu : list1) {
if (sid.contains(stu.split(",")[0])) {
sum += Integer.valueOf(stu.split(",")[2]);
}
}
String sidscore = sid.split(",")[0] + "," + sum;
sIdScore.add(sidscore);
}
//匹配存储id、总分列表和学生列表中的id,找到相同后将总分附加到学生列表中
ArrayList<String> stu = new ArrayList<>();
for (String s : sIdScore) {
for (String str : list) {
if (s.split(",")[0].equals(str.split(",")[0])) {
String score = str + "," + s.split(",")[1];
stu.add(score);
}
}
}
//设置班级列表
ArrayList<String> grade = new ArrayList<>();
for (String s : stu) {
if (!grade.contains(s.split(",")[4])) {
grade.add(s.split(",")[4]);
}
}
/*//按照班级排序
ArrayList<ArrayList<String>> sGrade = new ArrayList<>();
for (String s : grade) {
ArrayList<String> strings = new ArrayList<>();
for (String str : stu) {
if (s.split(",")[0].equals(str.split(",")[4])) {
strings.add(str);
}
}
sGrade.add(strings);
}
//遍历班级分配后学生列表最终结果
for (ArrayList<String> s : sGrade) {
System.out.println(s);
}*/
//找到每个班的最高分思想:每个班比较找出最大总分,再比较每个班最大总分属于哪位学生,将那个学生的信息存于列表
ArrayList<String> strings = new ArrayList<>();
for (String s : grade) {
int max = 0;
for (String str : stu) {
if (s.split(",")[0].equals(str.split(",")[4])) {
if (Integer.valueOf(str.split(",")[5]) > max) {
max = Integer.valueOf(str.split(",")[5]);
}
}
}
for (String str1 : stu) {
if (s.split(",")[0].equals(str1.split(",")[4])) {
if (max == Integer.valueOf(str1.split(",")[5])) {
strings.add(str1);
}
}
}
}
//遍历结果:按班级分组求总分最高的学生
for (String s : strings) {
System.out.println(s);
}
}
}
day11_关于学生信息和成绩配对的列表小练习
最新推荐文章于 2023-03-26 01:54:18 发布