日期:2014-05-20  浏览次数:20642 次

一个一直困扰我的封装类与基本类的问题
某某错误:The method addItem(Object) in the type JComboBox is not applicable for the arguments (int)


  我的电脑在装jdk的时候同时也装了jre,所以在使用eclipse的时候默认的library是jre的。且我把path与JANA_HOME环境变量设置成jdk的。
  当我用eclipse时,如果函数的参数类型要求是Object,而我在调用时用的参数的基本类型的话,就会报错,无法编译;
  但当我用cmd的javac、java指令来编译执行代码时,就可以成功,这是为什么呢?
  于是我以为这是eclipse里面library的问题,于是我将eclipse的library设成jdk的,但还是报错,为什么呢?

这种情况经常遇到,很多我直接从网上copy下来的程序(别人已经写好编译成功的),用eclipse无法编译,必须将基本类型参数转换成相应的封装类对象才可编译成功。但直接用cmd来编译又可成功。求解。
   
 

------解决方案--------------------
这个和library没关系,是jdk版本的问题,eclipse里的jdk版本是1.5以前的,没有自动拆箱装箱机能,所以编译失败,jdk1.5以上的版本有自动拆箱装箱机能,所以不报错
所以LZ修改eclipse的jdk版本就可以了