初心者、これについて頭を包むことができないようです。
アイテム クラス
public class Item implements Comparable {
private int number;
private String description;
public Item(int num, String descript){
this.number = num;
this.description = descript;
}
public int getNumber(){
return number;
}
public String getDescription(){
return description;
}
@Override public int compareTo(Object o){
Item i = (Item) o;
if(this.getNumber() < i.getNumber())
return -1;
if(this.getNumber() > i.getNumber())
return 1;
return 0;
}
}
主な方法
Item[] items = new Item[3];
items[0] = new Item(102, "Duct Tape");
items[1] = new Item(103, "Bailing wire");
items[2] = new Item(101, "Chewing Gum");
Arrays.sort(items);
for (Item i : items){
System.out.println(i.getNumber() + ": " + i.getDescription());
}
items[0] = new Item(102, "Duct Tape");
現在の変数番号、説明を設定するために Item コンストラクターを通過するメイン メソッドがインスタンス化するとき。
私の問題は、compareTo引数で何が渡されているのか理解できないようです。したがって、何をしているのか理解できないようですthis.getNumber() < i.getNumber()
...
現在のオブジェクトが渡されたオブジェクトより小さい場合、負の数を返しますか?
どんな助けでも大歓迎です。