首页 > 解决方案 > 我收到无效字符常量的错误我做错了什么?

问题描述

 do {
  System.out.println("What is the Secret Word");
  secretWord.equalsIgnoreCase("Water");
   if (secretWord != 'Water')
    secretWord.equalsIgnoreCase("Water");
  }

我试图让用户猜测水这个词,如果他们不这样做,那么它会提示用户再次猜测。如果他们做对了,程序会呼应秘密词水

标签: java

解决方案


  1. 在向下的第 4 行,您需要将“水”更改为“水”,因为它是一个字符串。
  2. 您还缺少 if 语句的括号。
  3. 该行中的 !=secretWord != "Water"不用于确定一个字符串是否不等于另一个字符串。而是.equals用来确定一个字符串是否等于另一个字符串。

试试这个代码:

Scanner scanner = new Scanner(System.in);
do {
          System.out.println("What is the Secret Word");
          String secretWord = scanner.next();
          secretWord.equalsIgnoreCase("Water"); // Delete this - line does nothing
           if (!secretWord.equals("Water")) {
            secretWord.equalsIgnoreCase("Water");
          } 
        }while (!secretWord.equals("Quit"));

此外,您在这个问题上标记了 Java 和 Javascript。这是两种完全不同的语言。我假设您可能只是指 Java。


推荐阅读