gpt4 book ai didi

java: 不兼容的类型: java.lang.String 无法转换为 double

转载 作者:行者123 更新时间:2023-12-02 11:41:36 27 4
gpt4 key购买 nike

 import java.util.Scanner;

public class LetterGrade {
public static void main(String[] args) {

double Grade;

Scanner scanner = new Scanner(System.in);
System.out.print("Insert first grade: ");
Grade = scanner.next();
System.out.print("Insert second grade: ");
Grade = Grade + scanner.next();
System.out.print("Insert third gade: ");
Grade = Grade + scanner.next();
System.out.print(Grade);


}
}

不太确定我在这里做错了什么......但这就是我得到的错误:

Error:(10, 29) java: incompatible types: java.lang.String cannot be converted to double
Error:(12, 23) java: incompatible types: java.lang.String cannot be converted to double
Error:(14, 23) java: incompatible types: java.lang.String cannot be converted to double

最佳答案

您正在使用方法next() - 此方法返回String。然后,您希望将此String 分配给Grade,其类型为double。您需要将 String 转换为 double 或将输入 String 解析为 double 值。以下是实现这一目标的可能方法:

  1. 不要使用 scanner.next(),而是尝试使用 scanner.nextDouble(),但请注意,每次调用 nextDouble() 后 您需要通过调用 scanner 来删除剩余的换行符(在按 Enter 确认输入的新行字符已创建并且您想要删除它之后)。 nextLine().

  2. 您可能需要考虑使用解析方法而不是调用 nextDouble()nextLine()Double 类中有一个 parseDouble() 方法,可以帮助您从输入 String 中获取 Double 值:Grade = Double.parseDouble(scanner.nextLine()) 自动删除剩余的换行符。

关于java: 不兼容的类型: java.lang.String 无法转换为 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48510925/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com