java - 在 java 中运行 charAt 时出现意外的类型错误

标签 java compiler-errors charat

在尝试用 java 运行小程序时,出现以下错误:

HangmanSB.java:19: error: unexpected type
            if (sentence.charAt(i) = " "){
                               ^
  required: variable
  found:    value
1 error

我尝试阅读本网站上发布的类似问题的答案,但我似乎仍然无法理解如何修复程序给我的错误。

import java.util.Scanner;

class HangmanSB {

   public static void main(String[] args){

      Scanner keyboard = new Scanner(System.in);

      String sentence = keyboard.nextLine();

      int turns = keyboard.nextInt();

      for (int turnsLeft = turns; turnsLeft > 0; turnsLeft--){

         int length = sentence.length();

         for (int i = 0; i < length; i++){

            if (sentence.charAt(i) = " "){
               System.out.println(" ");
            }

            else {
               System.out.print("_");
            }
         }
      }
  }

}

最佳答案

有两个错误:

public char charAt(int index) 方法返回 char

您需要使用==而不是赋值运算符=

因此使用:

if (sentence.charAt(i) == ' '){
    System.out.println(" ");
}

关于java - 在 java 中运行 charAt 时出现意外的类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49984057/

相关文章:

java - 使用同一组捕获 <thisPartOnly> 和 (thisPartOnly)

尽管未声明,C 编译器仍期望函数中存在附加参数

xcode - 如何禁用 "Multiple methods named ... found with mismatched result, parameter type or attributes"

java - 获取与正则表达式匹配的每个字符串的数组

java - solrj 在特定字段上搜索

java - 通过使用 Google Apps 创建的网站向用户发送电子邮件需要哪个主机名?

python - 带有Raspberry pi 2b +的超声波传感器会产生编译错误

Javascript charAt 在一个字符串中进行不同的音译

java - 无法获得将一个字符串中的字符与另一个字符串进行比较并返回 true 的 for 循环

Javascript 数组洗牌不应输出两个相邻的数组