使用TreeMap集合实现对存入10位学生的Java成绩从小到大输出;学生类定义参考第3题,在第3题学生类的基础上增加Java成绩属性。
时间: 2023-02-09 10:49:34 浏览: 118
学生成绩管理系统Java
可以这样实现:
1. 首先需要在学生类中增加Java成绩属性。例如:
```
public class Student {
private String name;
private int age;
private int javaScore;
// 省略构造函数和getter、setter方法
}
```
2. 创建一个类,实现`java.util.Comparator`接口,用于比较两个学生对象的Java成绩大小。例如:
```
public class StudentComparator implements Comparator<Student> {
@Override
public int compare(Student s1, Student s2) {
return s1.getJavaScore() - s2.getJavaScore();
}
}
```
3. 创建一个`TreeMap`集合,并将上面实现的`StudentComparator`作为参数传入构造函数。例如:
```
TreeMap<String, Student> students = new TreeMap<>(new StudentComparator());
```
4. 创建10个学生对象,并使用`put`方法将它们放入`TreeMap`集合中。例如:
```
students.put("s1", new Student("张三", 20, 89));
students.put("s2", new Student("李四", 21, 75));
// ...
```
5. 使用`values`方法将`TreeMap`集合中所有的学生对象取出,并使用`for-each`循环输出。例如:
```
for (Student s : students.values()) {
System.out.println(s.getName() + " " + s.getJavaScore());
}
```
这样,学生的Java成绩就能够从小到大输出了。
阅读全文