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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

我并未用if(this.name.equals(course.name)),而是使用if(this.name==course.name),運(yùn)行結(jié)果一樣,課堂中要我們思考的,為何不用==,而用equals,本人未思考出來(lái),求解答什么時(shí)候用==,什么時(shí)候用equals

package com.zhou.jihe;

public class Course {
?public String id;
?public String name;
?public Course(String id,String name)
?{
??this.id=id;
??this.name=name;
?}

?public Course(){}
? public boolean equals(Object obj)
? {
?? if(this==obj)
?? {
???return true;
?? }
?? if(obj==null)
?? {
??? return false;
?? }
?? if(!(obj instanceof Course))
?? {
??? return false;
???
?? }
??Course cr=(Course)obj;
??if(this.name==null)
???{if(cr.name==null)
???{
????return true;
???}
???else
???{
????return false;
???}???
???}
??if(this.name==cr.name)
??{
???return true;
??}
??else{
???return false;
??}
??
? }
}

正在回答

3 回答

這是因?yàn)?,從Course的構(gòu)造方法中可以看出,這里比較的兩個(gè)name都是字符串常量,它們?cè)趦?nèi)存中都保存在了常量池中,而如果兩個(gè)字符串常量相同,它們?cè)诔A砍刂兄挥幸环莸目截悾杂?=比較地址的時(shí)候,它們也是相等的。如果想要使結(jié)果為false,可以將Course的構(gòu)造方法中,this.name = name,修改為this.name = new String(name).這是因?yàn)橥ㄟ^(guò)new String()創(chuàng)建的字符串被當(dāng)做對(duì)象放在了堆內(nèi)存中,在堆內(nèi)存中就算是兩個(gè)相同的字符串也是有兩個(gè)拷貝,因此就會(huì)返回false

0 回復(fù) 有任何疑惑可以回復(fù)我~

這里有一篇我轉(zhuǎn)的文章,希望對(duì)你有幫助?http://www.cnblogs.com/langren1992/p/4467270.html

1 回復(fù) 有任何疑惑可以回復(fù)我~

比較值的時(shí)候用equals ?,比較址的時(shí)候用==

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

我并未用if(this.name.equals(course.name)),而是使用if(this.name==course.name),運(yùn)行結(jié)果一樣,課堂中要我們思考的,為何不用==,而用equals,本人未思考出來(lái),求解答什么時(shí)候用==,什么時(shí)候用equals

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)