【问题标题】:Cannot find symbol Double.parseDouble(args[0]) [duplicate]找不到符号 Double.parseDouble(args[0]) [重复]
【发布时间】:2013-09-19 14:00:00
【问题描述】:

每当我尝试运行以下代码时,Java 都会告诉我找不到符号。

public class Quadratic {
    public static void main(String[] args) {
        double b = Double.parseDouble(args[0]);
        double c = Double.parseDouble(args[1]);
        double discriminant = b * b - 4.0 * c;
        double d = Math.sqrt(discriminant);
        System.out.println((-b + d) / 2.0);
        System.out.println((-b - d) / 2.0);
    }
}

认为上周奏效了。为什么我不断收到此错误?

【问题讨论】:

  • 它在抱怨哪一行?
  • 我们需要args数组内容,即命令行参数。
  • 您的代码中可能缺少导入语句。
  • 当你运行这个程序时告诉我们step by step
  • parseDouble 方法在 1.2 版中添加到 Java。您使用的是哪个版本的 Java?

标签: java


【解决方案1】:

当您认为它在上周有效时,您应该回想一下您在那一周内所做的可能会破坏您现有代码的事情。

我想你已经创建了一个名为Double 的新类。没有它,如果你使用Double,java 会自动导入java.lang.Double,但如果你的包中有一个具有相同短名称的类,则首选该类。而且那个类没有parseDouble的方法。

因此,您可以这样做,明确引用 java.lang.Double 而不仅仅是 Double,或者从您的包中删除新的 Double 类。

但这只是一个猜测。关于您的环境的信息太少。

【讨论】:

    猜你喜欢
    • 2018-01-27
    • 2010-10-12
    • 2019-05-31
    • 2015-06-07
    • 2020-06-13
    • 2012-09-09
    • 2011-10-29
    相关资源
    最近更新 更多