2、编写程序实现: (1)定义School类,包含两个属性:学校名称name (String类型),在校人数mm(int): (2)实现Comparable接口,按照学生人数排序: (3)采用TreeSet容器存储School类的3个对象; (4)使用 Iterator,遍历输出容器中各Schoo1对象的学生人数。
时间: 2024-03-21 07:38:13 浏览: 102
创建学生类Student,继承自SchoolPerson类, 添加额外两个属性:班级class、学号sno。 添加方法:打印学生的所有信息print_info方法。
5星 · 资源好评率100%
下面是Java代码实现:
```
import java.util.*;
public class School implements Comparable<School> {
private String name;
private int mm;
public School(String name, int mm) {
this.name = name;
this.mm = mm;
}
public String getName() {
return name;
}
public int getMm() {
return mm;
}
public void setName(String name) {
this.name = name;
}
public void setMm(int mm) {
this.mm = mm;
}
@Override
public int compareTo(School o) {
return this.mm - o.getMm();
}
public static void main(String[] args) {
TreeSet<School> set = new TreeSet<>();
set.add(new School("School A", 100));
set.add(new School("School B", 50));
set.add(new School("School C", 200));
Iterator<School> it = set.iterator();
while (it.hasNext()) {
System.out.println(it.next().getMm());
}
}
}
```
解释一下代码:
1. 定义了 `School` 类,包含名称和人数两个属性,并实现了 `Comparable` 接口,用于按照学生人数排序。
2. 在 `main` 函数中,创建了一个 `TreeSet` 容器,存储了三个 `School` 对象,并自动按照学生人数排序。
3. 使用 `Iterator` 遍历容器中的对象,并输出学生人数。
阅读全文