課程
/后端開發
/Java
/Java入門第三季
if語句中為什么錯誤?
2017-06-27
源自:Java入門第三季 2-4
正在回答
equals()方法本身返回的就是一個boolean類型的值,即true和false 。你的if里面就等價于a[i]==true或者a[i]==false 這本身就是錯誤的.
代碼里有兩個問題:
1, for 語句中的i 應該賦初值為0 ? ? ? ? ? ?應寫成 ? ? int i = 0;
2, ? 在java里要獲取一個char , 得用s.charAt(i) 語句, python 可以用s[i] ; 而且char之間比較得用==, 不能用.equals ? ? ? ? 應寫成 ? s.charAt(i)=='a'
equals()方法
比較的是對象的引用是否指向同一塊內存地址。
可以通過重寫來實現比較兩個對象的值是否相同。
“==”用來比較引用數據類型時,也是比較內存地址。
需要注意的是:因為在String、Double等封裝類中,已經重載(overriding)了Object類的equals()方法,是進行內容的比較。
你這個s變量是字符串吧?字符串取每個字符可以用s.charAt(i)=='a'這樣來判斷。charAt()返回的是char類型,用==比較
s[i].equals('a') ,不要雙等號
int i 沒有賦初始值
直接 s[i].equals('a') ?不需要 s[i] == xxx
舉報
Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧
2 回答為什么不能用getBytes()判斷字符是否相同???
3 回答為什么判斷ID是否被占用不用equals??
2 回答判斷是否相同聽不懂
4 回答為什么能在重寫equals語句中用equals方法
2 回答我把上一章split用到這里面,變成字符串了,就可以用equals比較了,但是我if中的語句執行了,else語句塊為什么也執行了?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-12-14
equals()方法本身返回的就是一個boolean類型的值,即true和false 。你的if里面就等價于a[i]==true或者a[i]==false 這本身就是錯誤的.
2017-08-23
代碼里有兩個問題:
1, for 語句中的i 應該賦初值為0 ? ? ? ? ? ?應寫成 ? ? int i = 0;
2, ? 在java里要獲取一個char , 得用s.charAt(i) 語句, python 可以用s[i] ; 而且char之間比較得用==, 不能用.equals ? ? ? ? 應寫成 ? s.charAt(i)=='a'
2017-07-06
equals()方法
比較的是對象的引用是否指向同一塊內存地址。
可以通過重寫來實現比較兩個對象的值是否相同。
“==”用來比較引用數據類型時,也是比較內存地址。
需要注意的是:因為在String、Double等封裝類中,已經重載(overriding)了Object類的equals()方法,是進行內容的比較。
2017-06-27
你這個s變量是字符串吧?字符串取每個字符可以用s.charAt(i)=='a'這樣來判斷。charAt()返回的是char類型,用==比較
2017-06-27
s[i].equals('a') ,不要雙等號
2017-06-27
int i 沒有賦初始值
2017-06-27
直接 s[i].equals('a') ?不需要 s[i] == xxx