java - 具有indexOf的Java StringBuilder

原文 标签 java stringbuilder indexof

我正在用Java编写传统的子手游戏。我目前坚持的是查找用户字符输入是否不是String中的字符。

if(getLetters.indexOf(userCharInput)==-1) //getLetters is the StringBuilder, and the userCharInput is a String.
{
     playerCounter++;
}


这是我似乎遇到麻烦的部分,我查看了不同的indexOf示例,并制定了此示例以使其与我的程序配合使用。

问题是,它不起作用。我将其设置为使玩家有3次机会猜出该单词,因为默认单词是“ apple”,我猜为“ a”,“ p”和“ l”,因此可以猜出“ e”。现在,我故意做出3个错误的猜测,并且不会触发下一个else if

else if(playerCounter == 3)
{
    System.out.println("All lives are gone! Game Over!");
    playerCounter = 1; //resets the playerCounter to one.
    System.exit(0);
}


任何帮助将不胜感激。

最佳答案

这是因为当您不断猜测错误的字母时,第一个if语句被评估为true:

if(getLetters.indexOf(userCharInput)==-1) //getLetters is the StringBuilder, and the userCharInput is a String.
{
     playerCounter++;
}


因此,您会不断增加playerCounter(超过3)。这意味着您的下一条语句是不可访问的(一旦大于3,就不会再变小,至少对于到目前为止已发布的代码而言)。因此else if (playerCounter == 3)可能无法访问。

关于java - 具有indexOf的Java StringBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14106622/

相关文章:

java - 查找子字符串并评估表达式

java outOfMemoryError 与 stringbuilder

javascript - JavaScript-编写indexOf和每个

java - 更新新项目时如何自动向下滚动ListView控件-android studio

java - java中输出类型不同时的工厂模式

java - 使用链式追加和使用多个+串联之间有什么区别

java - StringBuilder 中的多个 StringBuilder。值得吗?

javascript - indexOf对于单词的第一个字母返回-1

java - 快速列举问题

java - 将非字符串变量显示给JLabel