它说我的导入有错误,但我不知道为什么

时间:2021-04-18 14:01:50

标签: java

import java.lang.Math.*; 

/tester.java:3:错误:类型的非法开始 导入 java.lang.Math.; ^ tester.java:3:错误:预期 导入 java.lang.Math>*; ^

public class Circle
{
    public static double computeArea(double radius)
    {
        return (Math.PI) * (radius * radius);
    }
    public static void main(String[] args) {
        System.out.println(computeArea(2.0));
        System.out.println(computeArea(5.3));
}
}

2 个答案:

答案 0 :(得分:1)

Math 类是 Java 中的一个类,它不是一个包。所以你的代码应该是这样的:

class Main
{
    public static double computeArea(double radius)
    {
        return (Math.PI) * (radius * radius);
    }
    public static void main(String[] args)
    {
        System.out.println(computeArea(2.0));
        System.out.println(computeArea(5.3));
    }
}

但是,您只能像这样在导入旁边使用 static 关键字导入它(星号表示导入所有代码):

import static java.lang.Math.*;

这样你就不会再遇到那个错误了。

答案 1 :(得分:0)

对于非静态导入,您只能导入一个包中的所有内容。 {"_id": "phd/Klink2006","type": "Phd", "title": "IQForCE - Intelligent Query (Re-)Formulation with Concept-based Expansion", "year": 2006, "publisher": "Verlag Dr. Hut, M?nchen", "authors": ["Stefan Klink"], "isbn": ["3-89963-303-2"]} 是一个类,而不是一个包,所以这不起作用。

但是,您可以静态导入类中的所有静态符号(方法和字段):

java.lang.Math