你能看出为什么这个if语句不能正常工作吗?

时间:2012-06-06 21:27:26

标签: java

当我运行它时,if语句总是返回false,因此不会运行我在那里的两行。您可以在上面的行中看到我检查过这些单词是否实际相同而且它们是相同的。那么我有什么东西可以完全忘记或者我只是搞砸了吗?如果重要我正在使用eclipse。

boolean wordHasElement = false;
for (int firstdimension = 0; firstdimension <= wordnumber-1; firstdimension++){
    System.out.println("-"+ words[firstdimension][0] + "-" + linewords[linewordnumber]  + "-");
    if (words[firstdimension][0] == linewords[linewordnumber] ){
        System.out.println("Worked");
        wordHasElement = true;
    }
}

1 个答案:

答案 0 :(得分:11)

  

if(words [firstdimension] [0] == linewords [linewordnumber]){

应替换为

if (words[firstdimension][0].equals(linewords[linewordnumber] ){
  • ==检查一个对象是否与另一个对象相同,你真的不感兴趣。
  • equals(...)检查两个字符串是否包含相同的字符串 - 相同顺序的相同字母 - 这才是最重要的。或者,如果案件无关紧要,您可以使用equalsIgnoreCase(...)