我有一些代码可以让我输入一个10个双打的数组,我想改变它,所以我可以选择在开始时选择我想要输入的数量(最多10个)。我的代码如下:
import java.util.Scanner;
public class HowTo {
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
double num[]=new double[10];
double i=0;
for (i=0;i<num.length;i++) {
System.out.println("enter a number");
num[(int) i]=in.nextDouble();
}
}
}
答案 0 :(得分:-1)
您没有使用列表,而是使用数组。使用列表(尝试ArrayList)。您没有指定初始大小,它会随着您添加内容而增长。当你完成后,它很容易转换成数组,如果这真的是你想要的。
取代:
double num[]=new double[10];
使用:
List<Double> num=new ArrayList<>();
和
num[(int) i]=in.nextDouble();
与
num.add(in.nextDouble());
如果要阅读项目,请使用num.get(itemNumber)
现在我建议你到此为止,没有理由回到数组 - 列表集很好 - 但如果你真的必须:
如果你想让num []成为一个双重数组,那么最后是:
Double[] array = num.toArray(new Double[num.size()]);
如果你真的希望它是一个&#34; double&#34;数组(注意小写),转换前一个数组如下:
double[] doubleArray = ArrayUtils.toPrimitive(array);