举一个treeset应用的例子
时间: 2023-11-28 14:50:07 浏览: 65
一个Treeview的应用实例
5星 · 资源好评率100%
TreeSet 是一个基于红黑树实现的集合类,它可以自动实现元素的排序。下面是一个使用 TreeSet 的例子:
假设有一个学生成绩列表,包含学生姓名和成绩,我们想要按照成绩从高到低的顺序来展示学生列表。我们可以定义一个 Student 类来表示学生,包含姓名和成绩两个属性。然后使用 TreeSet 存储所有学生对象,并且定义一个 Comparator 来实现按照成绩排序。
```java
import java.util.Comparator;
import java.util.TreeSet;
public class Main {
public static void main(String[] args) {
// 定义一个 Comparator 来实现按照成绩排序
Comparator<Student> comparator = new Comparator<Student>() {
@Override
public int compare(Student s1, Student s2) {
return s2.getScore() - s1.getScore();
}
};
// 创建一个 TreeSet 来存储所有学生对象,并且使用 Comparator 进行排序
TreeSet<Student> studentSet = new TreeSet<>(comparator);
// 添加学生对象
studentSet.add(new Student("Alice", 90));
studentSet.add(new Student("Bob", 80));
studentSet.add(new Student("Charlie", 95));
studentSet.add(new Student("David", 85));
// 遍历 TreeSet,并且按照成绩从高到低的顺序输出学生列表
for (Student student : studentSet) {
System.out.println(student.getName() + ": " + student.getScore());
}
}
}
class Student {
private String name;
private int score;
public Student(String name, int score) {
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public int getScore() {
return score;
}
}
```
输出结果为:
```
Charlie: 95
Alice: 90
David: 85
Bob: 80
```
可以看到,输出的学生列表按照成绩从高到低的顺序排列。
阅读全文