我想用连续的整数填充数组。我创建了一个包含用户输入索引的数组:
Scanner in = new Scanner(System.in);
int numOfValues = in.nextInt();
int [] array = new int[numOfValues];
如何使用从1开始的连续数字填充此数组? 所有帮助表示赞赏!!!
答案 0 :(得分:33)
自Java 8以来
// v end, exclusive
int[] array = IntStream.range(1, numOfValues + 1).toArray();
// ^ start, inclusive
range
的增量为1. javadoc为here。
或使用rangeClosed
// v end, inclusive
int[] array = IntStream.rangeClosed(1, numOfValues).toArray();
// ^ start, inclusive
答案 1 :(得分:4)
简单的方法是:
int[] array = new int[NumOfValues];
for(int k = 0; k < array.length; k++)
array[k] = k + 1;
答案 2 :(得分:2)
for(int i=0; i<array.length; i++)
{
array[i] = i+1;
}
答案 3 :(得分:0)
你现在有一个空数组
所以你需要遍历每个位置(0到size-1),将下一个数字放入数组中。
for(int x=0; x<NumOfValues; x++){ // this will iterate over each position
array[x] = x+1; // this will put each integer value into the array starting with 1
}
答案 4 :(得分:0)
还有一件事。如果我想用反向做同样的事情:
s = 'abc'
li = [[ch] for ch in s]
print(li)
>> [['a'], ['b'], ['c']]
我再次收到了正常的订单..
答案 5 :(得分:-2)
Scanner in = new Scanner(System.in);
int numOfValues = in.nextInt();
int[] array = new int[numOfValues];
int add = 0;
for (int i = 0; i < array.length; i++) {
array[i] = 1 + add;
add++;
System.out.println(array[i]);
}