Java代码报错cannot resolve symbol: method parseInt(java.lang.String)如何解决?
问题分析与解决方案
嘿,这个问题我之前也碰到过,根源其实很简单——你当前目录下存在一个名为Integer.java的文件,和Java自带的核心类java.lang.Integer重名了!
先看你的报错信息:
.\Integer.java:19: cannot resolve symbol
symbol: method parseInt(java.lang.String)
Location: class Integer
number = Integer.parseInt(inData);
虽然你的代码保存在test2.java里,但Java编译器在查找Integer类时,优先找到了你自己写的Integer.java(这个类里显然没有parseInt方法),而不是系统自带的那个标准类,所以才会报找不到方法的错误。
解决步骤:
- 第一步:检查你的项目目录,找到那个
Integer.java文件,把它重命名(比如改成MyInteger.java)或者直接删除。 - 第二步:清理目录下可能已经生成的
Integer.class文件(如果有的话),避免编译时还引用旧的类文件。 - 第三步:重新编译运行你的
test2.java,命令如下:javac test2.java java Test2
这样就能正常调用Integer.parseInt()方法了,因为编译器会正确找到Java自带的java.lang.Integer类。
另外提醒一句:以后别用Java核心类库的类名来命名自己的类哦,很容易出现这种冲突问题!
内容的提问来源于stack exchange,提问作者Brennan C
相关产品推荐
相关产品推荐

