嵌套循环将数据添加到数组
Nested loop to add data to an Array
我真的很难理解嵌套的 for 循环,所以做了如下操作:
int arr[][] = new int[10][3];
int i, j;
arr[0][0]=21;
arr[1][0]=41;
arr[2][0]=61;
arr[3][0]=81;
etc.
... 得到以下输出:
21 21 21
41 41 41
61 61 61
81 81 81
etc.
我知道这是非常低效的,所以我尝试构建一个显然不起作用的嵌套 for 循环:
for(i=21;i<81;i+=20)
{
for(j=0;j<arr[i].length;j++)
{
arr[i][j] = i+j;
}
}
非常感谢正确方向的指导。谢谢
这是我试过的,好像符合你的要求,你可以看看。
int arr[][] = new int[10][3];
int i, j;
int value = 21;
for(i =0; i <10;i++) {
for(j = 0; j <3; j++) {
arr[i][j] = value;
}
value +=20;
}
您感兴趣的公式似乎是 ((i + 1) * 20) + 1
,它将为您提供正确的基于零的索引的值。喜欢,
int[][] arr = new int[10][3];
for (int i = 0; i < arr.length; i++) {
int c = ((i + 1) * 20) + 1;
for (int j = 0; j < arr[i].length; j++) {
arr[i][j] = c;
}
}
System.out.println(Arrays.deepToString(arr));
输出(格式化为 post)
[[21, 21, 21], [41, 41, 41], [61, 61, 61], [81, 81, 81],
[101, 101, 101], [121, 121, 121], [141, 141, 141],
[161, 161, 161], [181, 181, 181], [201, 201, 201]]
注意 我们也可以使用 Arrays.fill(int[], int)
来填充数组。喜欢,
for (int i = 0; i < arr.length; i++) {
int c = ((i + 1) * 20) + 1;
Arrays.fill(arr[i], c);
}
我想这就是您要找的。希望对你有帮助
int minValue = 21, increment = 20;
int arr[][] = new int[4][3];
for(int i = 0; i < arr.length; i++)
{
for(int j = 0; j < arr[i].length; j++)
{
arr[i][j] = minValue;
}
}
minValue += increment;
我真的很难理解嵌套的 for 循环,所以做了如下操作:
int arr[][] = new int[10][3];
int i, j;
arr[0][0]=21;
arr[1][0]=41;
arr[2][0]=61;
arr[3][0]=81;
etc.
... 得到以下输出:
21 21 21
41 41 41
61 61 61
81 81 81
etc.
我知道这是非常低效的,所以我尝试构建一个显然不起作用的嵌套 for 循环:
for(i=21;i<81;i+=20)
{
for(j=0;j<arr[i].length;j++)
{
arr[i][j] = i+j;
}
}
非常感谢正确方向的指导。谢谢
这是我试过的,好像符合你的要求,你可以看看。
int arr[][] = new int[10][3];
int i, j;
int value = 21;
for(i =0; i <10;i++) {
for(j = 0; j <3; j++) {
arr[i][j] = value;
}
value +=20;
}
您感兴趣的公式似乎是 ((i + 1) * 20) + 1
,它将为您提供正确的基于零的索引的值。喜欢,
int[][] arr = new int[10][3];
for (int i = 0; i < arr.length; i++) {
int c = ((i + 1) * 20) + 1;
for (int j = 0; j < arr[i].length; j++) {
arr[i][j] = c;
}
}
System.out.println(Arrays.deepToString(arr));
输出(格式化为 post)
[[21, 21, 21], [41, 41, 41], [61, 61, 61], [81, 81, 81],
[101, 101, 101], [121, 121, 121], [141, 141, 141],
[161, 161, 161], [181, 181, 181], [201, 201, 201]]
注意 我们也可以使用 Arrays.fill(int[], int)
来填充数组。喜欢,
for (int i = 0; i < arr.length; i++) {
int c = ((i + 1) * 20) + 1;
Arrays.fill(arr[i], c);
}
我想这就是您要找的。希望对你有帮助
int minValue = 21, increment = 20;
int arr[][] = new int[4][3];
for(int i = 0; i < arr.length; i++)
{
for(int j = 0; j < arr[i].length; j++)
{
arr[i][j] = minValue;
}
}
minValue += increment;