【题目1】:请按照下列要求编写程序。 (1)编马一个student类,包含name和age属性,提供有参构造方法。 (2) 在student类中,重写tostring()方法,输出age和name的值。 使用Treeset创建集合,依次向集合中添加元素: “张三”,23): (王五”,25): (李四”,24):公 按年龄从小到大进行排序。 输出结果 [Person Lname=张三,age=23], Person [name=李四,age=24], Person [name=王五,age=25]]
时间: 2024-02-28 07:57:47 浏览: 22
好的,这是一个Java编程题目,我可以帮你解答。下面是代码实现:
```java
import java.util.TreeSet;
public class Student implements Comparable<Student> {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
@Override
public int compareTo(Student o) {
return this.age - o.age;
}
public static void main(String[] args) {
TreeSet<Student> set = new TreeSet<>();
set.add(new Student("张三", 23));
set.add(new Student("王五", 25));
set.add(new Student("李四", 24));
for(Student s : set) {
System.out.println(s.toString());
}
}
}
```
解释一下代码的实现过程:
1. 定义一个Student类,包含name和age属性,并提供有参构造方法;
2. 重写toString()方法,输出age和name的值;
3. 实现Comparable接口,重写compareTo()方法,按年龄从小到大排序;
4. 创建TreeSet集合,向集合中添加元素,并按年龄从小到大排序;
5. 遍历集合,输出结果。
最后输出的结果为:
```
Person [name=张三, age=23]
Person [name=李四, age=24]
Person [name=王五, age=25]
```