Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t将字符串转换为int(Java)_Java_String_Int - Fatal编程技术网

Can';t将字符串转换为int(Java)

Can';t将字符串转换为int(Java),java,string,int,Java,String,Int,由于某些原因,javac无法编译Integer.parseInt()。我尝试了几个有parseInt的程序,但它们不起作用,所以我编写了一个简单的小程序来测试问题是parseInt还是程序中的其他东西。以下是我编写的测试程序: public class Test { public static void main(String[] args) { int a = Integer.parseInt(args[0]); System.out.println(a); } } 即使使用上面的程序

由于某些原因,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()运行这个程序,效果很好。关于为什么会出现此错误,您有什么想法吗?

请尝试以下操作,而不是
Integer.parseInt()

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

这将确保您在java.lang中使用正确的
Integer
类-如果这样做不起作用,那么您的环境就会出现严重问题。如果是这样的话,那么您必须有另一个名为
Integer
的类,而不是
java.lang.Integer
类。java为您导入
java.lang
包。因此,您的程序可以使用该包中的所有类,而无需使用
import
语句。但是,如果您在包(默认包)中声明了一个名为
Integer
的类,那么您就是
java.lang
中的
Integer

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

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

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

这不是导致该错误的代码。如果不是编译,那么有人入侵了您的javac。您是否碰巧创建了名为
Integer
的类?
或在自定义整数类中创建了自己的静态parseInt(String)方法
我强烈建议不要首先创建名为
Integer
的类,不要匹配方法名,这样我们可以捕获更少的编译时错误。