第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

看他們寫的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????????

正在回答

4 回答

compareTo方法是Comparable接口的抽象方法,Integer類已經(jīng)實現(xiàn)了,所以直接使用,
而他自定義的Card類要自己實現(xiàn)Comparable接口,所以才有這個CompareTo方法。

int是基本數(shù)據(jù)類型,并不是對象,你應該考慮的是這里填入int會不會自動裝箱成Integer,
不能的話肯定要用Integer.valueOf轉(zhuǎn)成Integer對象。


0 回復 有任何疑惑可以回復我~

Values.indexOf(this.value)

這句話是錯的,運行不了???? values.indexOf() 能用于字符串中,但不可以是字符串數(shù)組,如果想用

改成這樣

????public?final?String[]?colors?=?{?"紅桃",?"黑桃",?"方塊",?"梅花",?"大"?};
????public?final?String[]?values?=?{?"2",?"3",?"4",?"5",?"6",?"7",?"8",?"9",?"10",?"J",?"Q",?"K",?"A",?"王"?};
????
????public?String?VVV?=?"2345678910JQKA王?";
????public?String?CCC?=?"梅花方塊黑桃紅桃小大?";
????@Override
????public?int?compareTo(Card?o)?{
????????//?TODO?Auto-generated?method?stub
?????????if?(VVV.indexOf(this.value)?!=?VVV.indexOf(o.value))?{
????????????????return?Integer.valueOf(VVV.indexOf(this.value)).compareTo(Integer.valueOf(VVV.indexOf(o.value)));
????????????}?else?{
????????????????return?Integer.valueOf(CCC.indexOf(this.color)).compareTo(Integer.valueOf(CCC.indexOf(o.color)));
????????????}
????}
????
????values?和?colors?是數(shù)組??而CCC和VVV才是字符串
????或者把字符串數(shù)組強轉(zhuǎn)為字符串也可以
????StringBuilder?str1?=?new?StringBuilder("");
???for?(int?i=0;?i<values.length;?++i)?{
???????str1?+=?values[i];
???}
???stri.toString();


0 回復 有任何疑惑可以回復我~

是不是compareTo比較的是integer而不能是int,而integer.valueOf等于是強轉(zhuǎn)?是嗎?

0 回復 有任何疑惑可以回復我~

5742b9a30001ce7905000152.jpg

5742b9a4000129ab05000296.jpg

首先你看看API文檔,這個

public int compareTo(Integer anotherInteger)
方法是int的包裝類Integer的方法,參數(shù)也是一個Integer的實例對象;

其次,public static Integer valueOf()返回的真好是一個Integer的實例對象;

最后,你重寫的public?int?compareTo(Card?o)返回的是一個整數(shù)類型的值,而我上述中提到的方法compareTo()返回的也是個整數(shù);

懂了沒?

0 回復 有任何疑惑可以回復我~
#1

qq_之恩赫奧丶_0 提問者

是不是compareTo比較的是integer而不能是int,而integer.valueOf等于是強轉(zhuǎn)?是嗎?
2016-05-24 回復 有任何疑惑可以回復我~
#2

ixenos 回復 qq_之恩赫奧丶_0 提問者

形參是Card類對象 public int compareTo(Card o)
2016-06-15 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409768    人
  • 解答問題       4510    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

看他們寫的compareTO方法中

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號