看板 java 關於我們 聯絡資訊
我測試過,如果宣告 String s1 = "HI"; String s2 = "HI"; 雖然位置不同,但是內容都是"HI", 如果使用 if(s1 == s2), 結果會是true。 那我有個疑問。 我使用Scanner的next() 函數來讓使用者輸入一個字串, 然後讓它與先前設定過的string進行比較,但是都一直無法相等。 舉例來說, String[] s3 = new String[1]; s3[0] = "HI"; Scanner keyboard = new Scanner(System.in); String s4 = keyboard.next(); 然後輸入 HI 接著使用 if(s3[0] == s4) 結果會是false。 也就是程式內已經設定,s3的內容是"HI", 然後使用者也輸入HI給s4, 但是為什麼兩者會不相等呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.120.222.132 ※ 編輯: thnestar 來自: 140.120.222.132 (06/12 16:03) ※ 編輯: thnestar 來自: 140.120.222.132 (06/12 16:04)
slalala:月經題出現了 06/12 21:05
scott260202:s3.equals( s4 ) == true 06/13 21:02