Java整数数组未知大小

时间:2012-09-23 17:51:52

标签: java arraylist

我正在寻找解决Java中数组问题的“正确”方法: 我需要一个整数数组,而不知道最大值。

目前绕过声明限制的解决方案:

private ArrayList<Integer> myArray = new ArrayList<>();

此解决方案的问题:

myArray.get(i);

想要返回一个String而不是一个int,我需要int进行进一步的计算...... 我应该使用除ArrayList以外的其他东西还是我错过了其他东西? (我猜测最后一个选项......)

3 个答案:

答案 0 :(得分:1)

是的,因为您不知道您希望阵列保留多少项,所以您确实应该使用ArrayList。此外myArray.get(i)确实会返回int,只需尝试

ArrayList<Integer> list = new ArrayList<Integer>();
list.add(3);
int a =  myArray.get(0);  // autoboxing
System.out.println(a);

答案 1 :(得分:0)

ArrayList是正确的。它不会返回一个String,它会返回Integer。由于自动装箱,你可以自动从中获取一个int。

 int x = myArray.get(i);

返回一个Integer对象,包含的int将传递给你的变量。

答案 2 :(得分:0)

首先,在 java6

中这是错误的
private ArrayList<Integer> myArray = new ArrayList<>();

应该是

private ArrayList<Integer> myArray = new ArrayList<Integer>();

无论如何你都会遇到编译错误,所以我认为这是一个错字。 如果你这样做,你的代码肯定会返回Integer

myArray.get(i);