Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 否则,如果没有';我无法识别特定的字符串_Java_String_If Statement - Fatal编程技术网

Java 否则,如果没有';我无法识别特定的字符串

Java 否则,如果没有';我无法识别特定的字符串,java,string,if-statement,Java,String,If Statement,我曾多次遇到这个问题,我的代码看起来不错,但它就是无法识别某个字符串。我一直使用else-if语句,但其中一些似乎不起作用。我正在制作一个简单的基于文本的游戏来练习我在java中学到的东西,这并不多。请对我的午餐温柔一点。 我在这里做错了什么,出于某种原因,它不识别命令“Herovine”,而只是转到“else” 用户输入:“输入” 输出:“输入什么” 用户输入:“Herovine” 输出:“未识别命令” 将else-if(((“herovine”).equalsIgnoreCase(cmdon

我曾多次遇到这个问题,我的代码看起来不错,但它就是无法识别某个字符串。我一直使用else-if语句,但其中一些似乎不起作用。我正在制作一个简单的基于文本的游戏来练习我在java中学到的东西,这并不多。请对我的午餐温柔一点。 我在这里做错了什么,出于某种原因,它不识别命令“Herovine”,而只是转到“else”

用户输入:“输入” 输出:“输入什么” 用户输入:“Herovine” 输出:“未识别命令”


else-if(((“herovine”).equalsIgnoreCase(cmdone))
替换为
else-if((“herovine”).equalsIgnoreCase(conone))
如果这是您正在执行的确切代码,请查看用于用户输入的变量,并将其与
else-if
中使用的变量进行比较。 换行

else if (("Herobrine").equalsIgnoreCase(cmdone))


您计算的变量是错误的。我想你指的是
conone
,而不是
cmdone

这是您的代码,删除了与答案无关的部分,并添加了一些注释进行解释:

if (cmdone.equalsIgnoreCase("Help")) {
    // snipped.
}
else if (cmdone.equalsIgnoreCase("Enter")){
    // If you entered here, you know the cmdone is "Enter" (in some case).

    System.out.println("Enter what?");  
    String conone = in.next();
    if (conone.equalsIgnoreCase("Forest")  || conone.equalsIgnoreCase("The forest")){
        // snipped
    }
    else if (("Herobrine").equalsIgnoreCase(cmdone)) {
        // cmdone can't be "herobrine" - it's known to be "enter".
        // you probably meant to check conone
    }
    else {
        // snipped
    }
}

我将
conone
视为输入,将
cmdone
视为用于比较的变量。这就是你正在运行的代码吗?对不起,我把你的时间浪费在打字错误上了,我有点累了,请原谅。不过谢谢你,我得到了隧道视觉。接受答案:p还剩三分钟:/p我还不能上去,因为我的级别太低了:D
else if (("Herobrine").equalsIgnoreCase(conone)) // Using your input variable.
if (cmdone.equalsIgnoreCase("Help")) {
    // snipped.
}
else if (cmdone.equalsIgnoreCase("Enter")){
    // If you entered here, you know the cmdone is "Enter" (in some case).

    System.out.println("Enter what?");  
    String conone = in.next();
    if (conone.equalsIgnoreCase("Forest")  || conone.equalsIgnoreCase("The forest")){
        // snipped
    }
    else if (("Herobrine").equalsIgnoreCase(cmdone)) {
        // cmdone can't be "herobrine" - it's known to be "enter".
        // you probably meant to check conone
    }
    else {
        // snipped
    }
}