0

我正在尝试创建一个基于随机生成的简单文本的格斗游戏,并创建了游戏逻辑(ish)。现在我想使用 TextIO 接收输入。我知道如何接收一个 char、boolean、int 和 double。我尝试过使用它(缺少所有其他游戏逻辑),但它不起作用

String input = null;

input = TextIO.getlnString();

    if (input == "help"){

    System.out.println("You are currently in "+ sTerrain + " terrain.\nAre you fighting: " + sFighting
        + "\nAre you alive: " + sLife + "\nAre there any NPC's: " + sNpc
        + "\nWhich type of NPCs: " + npc + "\nYour health is: " + currHealth + "/" + health);

        }   // Closes off help

如果有人对 TextIO 有一定的专业知识,并且可以帮助我使用相同的字符串允许不同输入的多个输出,那将不胜感激

-约旦

4

1 回答 1

0

使用 Stringequals方法进行字符串比较,而不是==. String equals 方法检查两个字符串的内容是否相同,而 == 检查两个引用是否指向相同的内存位置。改变这个:

if (input == "help"){

if ("help".equals(input))

还要注意使用字符串文字进行反向检查,这有助于避免NullPointerException输入为null.

检查此相关帖子: Java String.equals 与 ==

于 2013-10-08T00:49:29.063 回答