如何使用简单的for循环创建数组?

时间:2016-12-07 00:52:12

标签: java arrays for-loop

我需要创建一个如下所示的数组:

[0,0,1,1,2,2,3,3,4,4....]

鉴于我的以下代码,如何消除counter

int[] SomeArray = new int[24];
int counter = 0;
for(int x = 0 ; x < SomeArray.length-1 ; x++){
    SomeArray[x] = counter;
    SomeArray{x+1] = counter;
    counter++;
}

2 个答案:

答案 0 :(得分:3)

在Java 8+中,您可以根据需要使用IntStream.range(int, int)map每个值。像,

int[] someArray = IntStream.range(0, 24).map(x -> {
    return x / 2;
}).toArray();

另外,请遵循Java变量命名约定(someArray,而不是SomeArray)。

如果必须使用Java 7(或更早版本),那么可以使用

之类的东西
int[] someArray = new int[24];
for (int i = 0; i < someArray.length; i++) {
    someArray[i] = i / 2;
}

答案 1 :(得分:1)

使用increment x = x + 2作为数组的两个索引存储在每次迭代中

for(int x = 0 ; x < SomeArray.length-1 ; x+=2){
        SomeArray[x] = x/2;

        SomeArray[x+1] = x/2;
}