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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

沒有重構equals方法時,兩個字符串對象的比較為何相等?

沒有重構equals方法時,兩個字符串對象的比較為何相等?

qq_殺意隆_0 2018-04-12 11:23:33
//沒有重構equals方法。 //Cat.java public?class?Cat{} //Program.java public?class?Program{ ????public?static?void?main(String[]?args){ ????????Cat?cat1?=?new?Cat(); ????????Cat?cat2?=?new?Cat(); ????????System.out.println(cat1.equals(cat2));?//false ???????? ????????String?s1?=?new?String(); ????????String?s2?=?new?String(); ????????System.out.println(s1.equals(s2));?//?同樣是對象,此處為何是true?? ????} }
查看完整描述

3 回答

?
yanrun

TA貢獻317條經(jīng)驗 獲得超240個贊

看一下String的源碼
public?boolean?equals(Object?anObject)?{
????????if?(this?==?anObject)?{
????????????return?true;
????????}
????????if?(anObject?instanceof?String)?{
????????????String?anotherString?=?(String)anObject;
????????????int?n?=?value.length;
????????????if?(n?==?anotherString.value.length)?{
????????????????char?v1[]?=?value;
????????????????char?v2[]?=?anotherString.value;
????????????????int?i?=?0;
????????????????while?(n--?!=?0)?{
????????????????????if?(v1[i]?!=?v2[i])
????????????????????????return?false;
????????????????????i++;
????????????????}
????????????????return?true;
????????????}
????????}
????????return?false;
????}

就是把兩個String轉換成字符串數(shù)組然后遍歷比較

查看完整回答
反對 回復 2018-04-12
  • qq_殺意隆_0
    qq_殺意隆_0
    這是說String類重構了equals方法? java中還有其他類重構了equals方法嗎?
  • yanrun
    yanrun
    很多吧,比如Integer,Double應該都重寫了
  • 大咪
    大咪
    我又看到大表哥了...
點擊展開后面1
  • 3 回答
  • 0 關注
  • 1462 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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