在循环中为“Number []”添加一个数字

时间:2013-06-05 12:38:40

标签: java numbers

这是一个非常简单的问题,我如何一次向“Number []”添加一个数字?

它是一个简化的例子: 通常填写数字我们这样做:

Number[] series1Numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9}

但是我如何在此结尾添加一个数字?像这样应该导致与上面相同:

for(int i=1; i<10; i++){
nextNumber = i;

Number[] seriesOfNumbers = {+ nextNumber}; //This dosnt work, so i need to change it somehow
}

3 个答案:

答案 0 :(得分:3)

如果你已经知道尺寸,那很简单:

Number[] seriesOfNumbers = new Number[9];
for(int i=1; i<10; i++){
    nextNumber = i;
    seriesOfNumbers[i - 1] = nextNumber;
}

但是,通常最好使用List

List<Number> seriesOfNumbers = new ArrayList<Number>();
for(int i=1; i<10; i++){
    nextNumber = i;
    seriesOfNumbers.add(nextNumber);
}

数组总是有固定的大小 - 一旦你创建了数组对象,你就无法添加或删除元素;你只能设置和获取它们。 ArrayList<T>仍然使用数组作为后备存储,但在需要时创建一个新数组(并复制现有值)以容纳更多项目。

答案 1 :(得分:1)

使用Collection代替数组:

List<Number> series1Numbers = new ArrayList<Number>

 for(int i=1; i<10; i++)
  series1Numbers.add(i);

如果你需要数组

Number []series1NumbersArray = new Number[series1Numbers.size()];
series1Numbers.toArray(series1NumbersArray);

答案 2 :(得分:1)

另一种解决方案可能是:

Number[] seriesOfNumbers = new Number[9];

for(int i=0; i<seriesOfNumbers.length; i++)
{
    seriesOfNumbers[i] = i+1;

}