-2
是我的Java代碼:細胞String數組和字符串不匹配
String s="foo";
for(int i=0;i<5;i++)
if(myArray[i]==s)
return true;
通過調試,我敢肯定這myArray的第一個元素是一樣的我的字符串s,但他們沒有按不匹配,因爲程序跳過了if塊(條件爲false)。有沒有人可以幫助我?由於
是我的Java代碼:細胞String數組和字符串不匹配
String s="foo";
for(int i=0;i<5;i++)
if(myArray[i]==s)
return true;
通過調試,我敢肯定這myArray的第一個元素是一樣的我的字符串s,但他們沒有按不匹配,因爲程序跳過了if塊(條件爲false)。有沒有人可以幫助我?由於
您應該使用string.equals()
比較的String
類型。
if(myArray[i]==s)
應該
if(myArray[i].equals(s)) {
}
此刻,如果s
和myArray[i]
是同一個對象,不包含相同的值不同的對象,你正在測試。
嘗試
if(myArray[i].equalsIgnoreCase(s))
「通過調試,我確定'myArray'的第一個元素是相同的......」你是什麼意思?相同的內容?相同的參考?你應該進一步調查這個問題,並用你嘗試過的東西來改進問題。 – Shark 2013-05-04 13:10:37
抱歉,我的第一次使用java的經驗和我在StackOverflow中的第一個問題。我的意思是相同的內容。我解決了 – nerdiken 2013-05-04 13:33:44