字符串输入(仅输出第一个字表示)

时间:2013-07-01 10:58:00

标签: java oop java-7

我正在尝试制作一段代码,将我输入的内容大喊大叫。

所以命令是'大喊'

我希望能够输入“大喊大叫(无论我想要什么)”,它会大喊大叫。我设法在朋友的帮助下完成了这项工作。但由于某种原因,它只会喊出输出的第一个单词。所以我不能输入一个句子,因为它只会说一个句子的第一个单词。

这是一段代码,我希望你能提供帮助。

case "npcyell":
    for (NPC n : World.getNPCs()) {
        if (n != null && Utils.getDistance(player, n) < 9) {
            String sentence = "";
            for (int i = 1; i < cmd.length; i++) {
                sentence = sentence + " " + cmd[i];
            }
            n.setNextForceTalk(new ForceTalk("[Alert] "
                    + Utils.getFormatedMessage(sentence)));
        }
    }
    return true;

1 个答案:

答案 0 :(得分:1)

我刚才做过类似的事。你说你希望能够说“大喊(文字)”并输出任何文字。我有一种不同的方式来实现它,但一般的结果是相同的,但它可以适应,但你在这种情况下使用它。这也假设您仅将此程序作为控制台项目运行。如果没有使用您用于输入文本的任何内容更改扫描仪并将文本分配替换为
text = textInputArea.getText().toString();
并将输出语句更改为System.out.println(text.getText().toString().substring(6,text.getText().toString().length() - 1));

Scanner s = new Scanner(System.in);
String text = s.nextLine();
if (text.startsWith("yell(") && text.endsWith(")")){
    System.out.println(text.substring(6,text.length() - 1));
}

我希望这适合你。我真的希望这适用于您正在制作的计划。