public class Test{ public static void main(String[] args) { Tree[] trees={new Tree(3),new Tree(4), new Tree(1)}; java.util.Arrays.sort(trees); //对数组依据age进行排序 for(Tree tree:trees){ System.out.print(【 1 】 +"\t");//输出树的树龄 } } } class Tree implements Comparable<Tree> { //实现Comparable接口 【 3 】; //定义私有成员变量age,整型 Tree(int age){ 【 4 】 ; //初始化成员变量age } public int getAge() { 【 5】 ; } @Override //实现定义在Comparable接口中的compareTo方法 public int compareTo(【 6 】 ;){ if(【 7 】) return -1; // 小于关系 else if(【 8 】) return 0;//等于关系 else return 1;
时间: 2024-04-11 15:28:51 浏览: 66
以下是对代码中缺失部分的补充:
```java
public class Test public static void main(String[] args) {
Tree[] trees = {new Tree(3), new Tree(4), new Tree(1)};
java.util.Arrays.sort(trees); //对数组依据age进行排序
for (Tree tree : trees) {
System.out.print(tree.getAge() + "\t"); //输出树的树龄
}
}
}
class Tree implements Comparable<Tree> {
private int age; //定义私有成员变量age,整型
Tree(int age) {
this.age = age; //初始化成员变量age
}
public int getAge() {
return age;
}
@Override
public int compareTo(Tree anotherTree) {
if (this.age < anotherTree.getAge()) return -1; // 小于关系
else if (this.age == anotherTree.getAge()) return 0; //等于关系
else return 1;
}
}
```
补充说明:
1. 在第【3】行,创建了一个Tree数组对象trees,并初始化了三棵树的年龄。
2. 在第【5】行,调用`java.util.Arrays.sort()`方法对trees数组进行排序,默认会使用树对象的`compareTo()`方法进行比较。
3. 在第【6】行,通过`for-each`循环遍历trees数组,并调用每棵树的`getAge()`方法获取年龄并输出。
阅读全文