看他們寫的compareTO方法中
public?int?compareTo(Card?o)?{
????????if?(Values.indexOf(this.value)?==?Values.indexOf(o.value))?{
????????????return?Integer.valueOf(Colors.indexOf(this.color)).compareTo(Integer.valueOf(Colors.indexOf(o.color)));
????????}?else?{
????????????return?Integer.valueOf(Values.indexOf(this.value)).compareTo(Integer.valueOf(Values.indexOf(o.value)));
????????}
????}
}
為什么必須用integer.valueOf????????
2016-06-15
2016-05-29
Values.indexOf(this.value)
這句話是錯的,運行不了???? values.indexOf() 能用于字符串中,但不可以是字符串數(shù)組,如果想用
改成這樣
2016-05-23
是不是compareTo比較的是integer而不能是int,而integer.valueOf等于是強轉(zhuǎn)?是嗎?
2016-05-23
首先你看看API文檔,這個
public int compareTo(Integer anotherInteger)
方法是int的包裝類Integer的方法,參數(shù)也是一個Integer的實例對象;
其次,public static Integer valueOf()返回的真好是一個Integer的實例對象;
最后,你重寫的public?int?compareTo(Card?o)返回的是一個整數(shù)類型的值,而我上述中提到的方法compareTo()返回的也是個整數(shù);
懂了沒?