输入多个学生的成绩信息,包括:学号、姓名、成绩。 学号是每个学生的唯一识别号,互不相同。 姓名可能会存在重复。 要求:使用HashMap存储学生信息。 输入多个学生的成绩信息,每个学生的成绩信息格式:学号+英文空格+姓名+英文空格+成绩 以“end”为输入结束标志按学号从大到小的顺序输出所有学生信息,每个学生信息的输出格式:学号+英文空格+姓名+英文空格+成绩
时间: 2024-01-22 16:04:00 浏览: 85
学生信息管理系统,实现学生信息包括:学号、姓名、性别、年龄、班级等信息。
5星 · 资源好评率100%
好的,以下是实现该功能的 Java 代码:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Map<String, String[]> map = new HashMap<>(); // 存储学生信息的 HashMap,键为学号,值为一个包含姓名和成绩的字符串数组
while (true) {
String input = scanner.nextLine();
if (input.equals("end")) {
break;
}
String[] info = input.split(" ");
String id = info[0];
String name = info[1];
String score = info[2];
map.put(id, new String[]{name, score});
}
List<String> ids = new ArrayList<>(map.keySet()); // 存储学生学号的列表
Collections.sort(ids, Collections.reverseOrder()); // 按学号从大到小排序
for (String id : ids) {
String[] info = map.get(id);
String name = info[0];
String score = info[1];
System.out.println(id + " " + name + " " + score);
}
}
}
```
运行程序后,你可以输入多个学生的成绩信息,以“end”为输入结束标志。程序会将学生信息存储在一个 HashMap 中,并按学号从大到小的顺序输出所有学生信息。每个学生信息的输出格式为:学号+英文空格+姓名+英文空格+成绩。
阅读全文