请大家帮我看看这道题
class Date{
int year;
int mouth;
int day;
Date(int _year,int _mouth, int _day){
year=_year;
mouth=_mouth;
day=_day;
}
public String toString() {
return "Year:Month:Day -- " + year + "-" + mouth + "-" + day;
}
public int compare(Date d){
return this.year>d.year ? 1
: this.year<d.year ? -1
: this.mouth>d.mouth ? 1
: this.mouth<d.mouth ? -1
: this.day>d.day ? 1
: this.day<d.day ? -1 :0;
}
}
public class TestDateSort2{
public static void main(String args[]){
String temp;
Date days[]=new Date[6];
days[0]=new Date(2001, 11, 2);
days[1]=new Date(2009,10, 2);
days[2]=new Date(2008, 2, 2);
days[3]=new Date(2007, 3, 3);
days[4]=new Date(2006, 4, 5);
for(int i=0;i<days.length;i++){
/11/ temp=days[i].toString();
System.out.println(temp);
}
selectSort(days);
for(int i=0;i<days.length;i++){
temp=days[i].toString();
System.out.println(temp);
}
}
public static void selectSort(Date a[]){
Date temp=a[0];
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[j-1].compare(a[j])>0){
temp=a[j];
}
}
if(!(a[i].equals(temp))){
a[i]=temp;
}
}
}
}
运行时出现at TestDateSort2.main(TestDateSort2.java:35) 就是/11/那行报错,如果把/11/哪行注释又出现 at Date.compare(TestDateSort2.java:15)
at TestDateSort2.selectSort(TestDateSort2.java:51)
at TestDateSort2.main(TestDateSort2.java:39)
希望有人帮我看看