為什么比較變量a=0和b=0不用重寫(xiě)equals()?
這里是只有實(shí)例化的對(duì)象用equals()比較才需要重寫(xiě)是嗎?要是平時(shí),比方說(shuō)賦值int a=0;int b=0;然后比較a是否等于b就不需要重寫(xiě)是為什么,難道a和b不需要分配地址嗎
這里是只有實(shí)例化的對(duì)象用equals()比較才需要重寫(xiě)是嗎?要是平時(shí),比方說(shuō)賦值int a=0;int b=0;然后比較a是否等于b就不需要重寫(xiě)是為什么,難道a和b不需要分配地址嗎
2016-09-13
舉報(bào)
2016-09-19
因?yàn)閍,b是基本類(lèi)型,并且不是你寫(xiě)的那個(gè)類(lèi)的成員變量,所以a,b是不能用equals比較的,如果強(qiáng)行用equals比較,則會(huì)編譯報(bào)錯(cuò)。你提到重寫(xiě),重寫(xiě)的概念是在需要在子類(lèi)中重寫(xiě)其父類(lèi)的方法,可是,基本類(lèi)型有父類(lèi)嗎?沒(méi)有,所以重寫(xiě)基本類(lèi)型的數(shù)據(jù)的equals方法這一概念就不存在。至于分配內(nèi)存這個(gè)問(wèn)題,在調(diào)用它們的時(shí)候,肯定分配了內(nèi)存給它們。所以,這是為何基本類(lèi)型只能用==比較,而不能用equals。
2016-09-14
a和b是int類(lèi)型,字符串用equals().
2016-09-13
因?yàn)閮煞N都是數(shù)據(jù)類(lèi)型?