如何实现Java可比接口?
我不确定如何在我的抽象类中实现类似的接口。我有以下示例代码可用来尝试解决这个问题:
public class Animal{ public String name;
public int yearDiscovered;
public String population;
public Animal(String name, int yearDiscovered, String population){
this.name = name;
this.yearDiscovered = yearDiscovered;
this.population = population; }
public String toString(){
String s = "Animal name: "+ name+"\nYear Discovered: "+yearDiscovered+"\nPopulation: "+population;
return s;
}
}
我有一个测试类,该类将创建Animal类型的对象,但是我希望在该类中具有一个可比的接口,以使发现的年纪高于低位。我不知道如何去解决这个问题。
回答:
您只需要定义Animal implements Comparable<Animal>
即public class Animal implements Comparable<Animal>
。然后,您必须以compareTo(Animal other)
自己喜欢的方式实现该方法。
@Overridepublic int compareTo(Animal other) {
return Integer.compare(this.year_discovered, other.year_discovered);
}
使用的实现compareTo
,具有较高级别的动物year_discovered
将获得更高的顺序。我希望你的想法Comparable
和compareTo
这个例子。
以上是 如何实现Java可比接口? 的全部内容, 来源链接: utcz.com/qa/403170.html