1

由于某种原因,javac 无法编译 Integer.parseInt()。我尝试了几个包含 parseInt 的程序,但它们都不起作用,所以我编写了一个简单的小程序来测试问题是 parseInt 还是程序中的其他问题。这是我写的测试程序:

public class Test
{
public static void main(String[] args)
{
int a = Integer.parseInt(args[0]);  
System.out.println(a);

}
}

即使使用上面的程序,我仍然收到编译器错误消息:“错误:找不到符号 a = Integer.parseInt();” 用箭头指向 。在整数和解析之间。我试过用 Double.parseDouble() 运行程序,它工作得很好。关于我为什么会收到此错误的任何想法?

4

2 回答 2

2

Java 为您导入java.lang包。因此,该包中的所有类都可用于您的程序,而无需使用import语句。但是,如果您在包(默认包)中声明了一个调用的类Integer,那么您将隐藏Integerin java.lang

您可以改用类的完全限定名称

java.lang.Integer.parseInt(args[0]);

或者在您的自定义类中创建您自己的static parseInt(String)方法。Integer这将使程序编译。确保它做你想做的事。

于 2013-10-15T20:54:12.200 回答
1

而不是Integer.parseInt(),尝试:

java.lang.Integer.parseInt(args[0]);

这将确保您在 java.lang 中绝对使用正确的Integer类 - 如果这不起作用,那么您的环境存在严重问题。如果是这样,那么您必须在Integer某个地方调用另一个类,而不是java.lang.Integer该类。

于 2013-10-15T20:54:08.247 回答