Java 你能理解为什么这个if语句不能正常工作吗?

Java 你能理解为什么这个if语句不能正常工作吗?,java,Java,当我运行该语句时,if语句总是返回false,因此不会运行我在那里的两行代码。你可以在上面的一行看到我检查过的单词是否相同,它们是否完全相同。那么,这里有什么我完全忘记的东西吗,或者我只是搞砸了?如果重要的话,我正在使用eclipse boolean wordHasElement = false; for (int firstdimension = 0; firstdimension <= wordnumber-1; firstdimension++){ System.out.pr

当我运行该语句时,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;
    }
}
boolean-wordhaseelement=false;
对于(int firstdimension=0;firstdimension)
if(单词[firstdimension][0]==linewords[linewordnumber]){

应替换为

if (words[firstdimension][0].equals(linewords[linewordnumber] ){
  • ==检查一个对象是否与另一个对象相同,这是您真正不感兴趣的
  • equals(…)
    检查两个字符串是否包含相同的字符串--相同的字母顺序--这才是重要的。如果大小写不重要,您也可以使用
    equalsIgnoreCase(…)

请修正空白的数量!我将我们的两个答案结合起来,然后删除了我的答案,如果可以的话。1+。嗯,好的,谢谢:)那么我之前检查的到底是什么?(只是想完全理解)您可以按照问题中的显示进行编码,检查两个对象是否位于内存中的同一位置。此处答案中的代码检查两个字符串是否具有相同的文本。