前言:
- 在创建自己的数据类型时,实现Comparable接口就能保证用例代码可以将其排序,其中的compareTo()方法来实现比较。
下面是一个实现Comparable接口的Date例子:
public class Date implements Comparable<Date> {
private final int day;
private final int month;
private final int year;
public Date(int d, int m, int y) {
day = d;
month = m;
year = y;
}
public int day() {
return day;
}
public int month() {
return month;
}
public int year() {
return year;
}
public int compareTo(Date that) {
if (this.year > that.year)
return +1;
if (this.year < that.year)
return -1;
if (this.month > that.month)
return +1;
if (this.month < that.month)
return -1;
if (this.day > that.day)
return +1;
if (this.day < that.day)
return -1;
return 0;
}
public String toString() {
return month + "/" + day + "/" + year;
}
}