为了账号安全,请及时绑定邮箱和手机立即绑定

将数据添加到数组的嵌套循环

将数据添加到数组的嵌套循环

饮歌长啸 2021-12-18 15:38:26
我真的很难理解嵌套的 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 2141 41 4161 61 6181 81 81etc.我知道这是非常低效的,因此尝试构建一个显然不起作用的嵌套 for 循环:for(i=21;i<81;i+=20)        {           for(j=0;j<arr[i].length;j++)           {              arr[i][j] = i+j;           }        }非常感谢正确方向的指南。谢谢。
查看完整描述

3 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

这是我试过的,似乎符合您的要求,您可以检查一下。


    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;

    }


查看完整回答
反对 回复 2021-12-18
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

您感兴趣的公式似乎可以((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));

输出(格式化后)


[[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);

}


查看完整回答
反对 回复 2021-12-18
?
三国纷争

TA贡献1804条经验 获得超7个赞

我想这就是你可能正在寻找的。希望能帮助到你


int minValue = 21, increament = 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 += increament;


查看完整回答
反对 回复 2021-12-18
  • 3 回答
  • 0 关注
  • 226 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号