compareTo()方法報錯
public?int?compareTo(Student?o)?{
//?TODO?Auto-generated?method?stub
return?this.getId().compareTo(o.getId());//返回0?,負整數、正整數
}
報錯:Cannot?invoke?compareTo(int)?on?the?primitive?type?intpublic?int?compareTo(Student?o)?{
//?TODO?Auto-generated?method?stub
return?this.getId().compareTo(o.getId());//返回0?,負整數、正整數
}
報錯:Cannot?invoke?compareTo(int)?on?the?primitive?type?int2017-07-10
舉報
2017-07-10
最后,我是這么實現的:compareTo()方法比較的字符串類型是否相等,而我一開始把id設置成int型,
所以在里面判斷語句,返回-1,0,1同樣可以達到效果。代碼如下:
@Override public?int?compareTo(Student?o)?{ //?TODO?Auto-generated?method?stub //當前的id和比較參數的id比較 int?set; if(this.getId()==o.getId()){ set?=0; }else?if(this.getId()<o.getId()){ set?=-1; }else{ set?=?1; } return?set;//返回-1,0,12017-07-10
他這個比較的String類型的 ? ?int類型的比較會報錯