java 中判斷字符串是否相等


周末老師讓寫一個 猜數字的java小游戲,隨機生成一個不同的四位數,然后根據用戶的輸入來判斷 ,給出相應的結果

每次都是輸入4位數字,按照標准,
分為數字存在(記錄為B);
數字存在且位置正確(記錄為A)

例如: 生成數字1234
競猜數字: 1367(提示競猜結論: 1A1B)

 然后我結果定義的返回類型是一個字符串,然后用一個String jieguo來接收,在最后判斷是否猜中數字時,應該和字符串"4A"進行比較,

開始我直接就用if(jieguo=="4A")來判斷兩個字符串是否相同,但是發現不行。

於是找度娘 發現了其中的不同:

比較字符串時,如果使用“==”比較兩個對象時,比較的是兩個對象的內存地址,所以不相等。即使它們內容相等,但是不同對象的內存地址也是不相同的。

所以就有了 equals();

例如: 
String A=new String( "aaa" ); 
String B=new String( "aaa" ); 
這兩個字符串當然應該是相等的。 
如果用表達式A==B,則該表達式的值為false 
如果用表達式A.equals(B),則該表達式的值為true ;

equals()比較的是對象的內容(區分字母的大小寫格式).


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM