Java list add 功能一問
例如:
double max = 5;
ArrayList listMaxFiveSpeed = new ArrayList();
listMaxFiveSpeed.add(max); <------ 這行出問題
我在JCreator LE 里可以過編譯
但是在NetBeans 5.0 里就不能通過!!!
error
cannot find symbol
symbol: method add( double)
location: class java.util.ArrayList
所以想問有什麼解決方法?如果用NetBeans 5.5會不會通過?如果NetBeans 5.5也不能,那如何才可以在netbeans add double 進list?因為我想利用netbeans的gui功能,但我開始寫的時候全都在jcreator里...現在才發現問題,謝謝各位了!!!~
------解决方案--------------------double max = 5.0;?//会不会是精度的问题?
------解决方案--------------------list里没有这个重载方法,你去查查API手册
------解决方案--------------------list.add(object)
double不是object,Double可以
------解决方案--------------------楼主的代码在eclipse下测试没有问题;
import java.util.*;
public class ArrayListAdd {
public static void main(String[] args) {
double max =5;
ArrayList listMaxFiveSpeed = new ArrayList();
listMaxFiveSpeed.add(max);
System.out.print(listMaxFiveSpeed.get(0));
}
}
------解决方案--------------------jdk5.0以上可以通过编译
jdk5.0以上有一个装箱拆箱的概念,装箱就是需要对象类型如Double时,提供double,就会自动构造一个Double对象;拆箱就是需要基本数据类型如double时,提供Double,就会自动生成一个double类型的数据
------解决方案--------------------up
------解决方案--------------------用ArrayList <Double> ,double 5;可不变
------解决方案--------------------我用Eclipse,装的是jdk6,但是默认还是使用1.4的Java规范,需要自己修改
我想你这个也应该是一样的,到设置里去找找,类似:参数,JVM,Compiler这样的地方。
我不用NetBeans,具体也不知道。
------解决方案--------------------jdk版本问题!!!!!!
------解决方案--------------------不是IDE的问题,是JDK的问题,确认你机器上没有安装1.4及以下版本