【问题标题】:incompatible types: String cannot be converted to double不兼容的类型:字符串不能转换为双精度
【发布时间】:2015-12-04 23:44:13
【问题描述】:
String LOA, LWL, Beam, Displacement, SailArea;
LOA = stdin.readLine(); //(LOA) Total Length of Vessel
System.out.println("LOA: " + (LOA));
System.out.println("HullSpeed: " + (1.34 * Math.pow(LWL, 0.5)));

我可以寻求帮助吗?我是 java 新手,不知道如何使用最后一个 LWL 修复此错误。
不兼容的类型:字符串不能转换为双精度

【问题讨论】:

  • LWL的值是多少?
  • 有没有办法使用 while 或 for 循环?

标签: java


【解决方案1】:

如果LWL 是代表DoubleString,请尝试使用Double.parseDouble 解析Double

Double LWLDouble = Double.parseDouble(LWL);
System.out.println("HullSpeed: " + (1.34 * Math.pow(LWLDouble, 0.5)));

您不能对String 使用数学运算是合理的。

【讨论】:

    【解决方案2】:

    查看这部分代码,

    System.out.println("HullSpeed: " + (1.34 * Math.pow(LWL, 0.5)));
    

    这里,LWL 是 String 类型 Math.pow() 不接受 String 参数它接受 double

    更多关于 Java herehere 中的类型

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      相关资源
      最近更新 更多