Java:猜谜游戏错误计数

标签 java count

嘿伙计们(顺便说一句,我是 java 新手)

我正在使用 Java 开发一个小型猜谜游戏,但遇到了一些问题。 如果有人能帮助我解决这个问题,我将非常感激。

游戏是这样的:

  • 猜测单词列表存储在数据库中
  • 选择一个随机单词并
  • 以变相的形式向用户展示
  • 用户必须使用字母猜测单词
  • 他们需要猜 5 个字母,直到游戏结束 结束

现在我的问题是我一直被错误计数困扰......

我的代码是这样的:

 //word is the word that user must guess
 // asciiToChar is letter that users've guessed
 // J is just a variable used for count

 for (j=0; j < word.length(); j++)
       {    if (word.charAt(j) != asciiToChar)
            {
             error++;
            }
       }
 System.out.println("Number of Errors: "+" "+ error);

每当用户执行错误的猜测时,错误计数应该会增加,但它会显示一些随机数字,例如 8,14 等。我需要弄清楚如何将计数增加 1 直到 5 个猜测

每当我使用 word.charAt(j) != asciiToChar 而不是 == 时,它都会给我正确猜测的正确计数。

我想不通:(

任何帮助将不胜感激

最佳答案

您的循环逻辑是错误的,它会为每个不等于用户猜测的字符添加错误。

尝试这样做(如果我做对了):

boolean found = false;
for (j=0; j < word.length(); j++)
{    
    if (word.charAt(j) == asciiToChar)
    {
        found = true;
        break; // no need to search further
    }
}
if(!found) error++; // if the letter isn't used, add 1 error

正如 Ingo Bürk 在评论中正确指出的那样,有一个针对此问题的预制解决方案:

if(!word.contains(asciiToChar)) { error++; }

关于Java:猜谜游戏错误计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19876384/

相关文章:

java - Android 共享首选项

java - 如何正确配置属性文件?

java - 使用预参数 Spark 进行 Pycharm 调试

MySQL 统计最多的行

mysql - Big Mysql 查询(连接结果中的计数并修改字符串)

Mysql 乘法计数

java - 在 Activity 之间传递数据

从更改的类读取序列化对象的 Java 兼容性

sql - 计算每个类别中的记录

mysql - 如何从 MySQL 表中获取所有评论