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

为什么 j < names[i].length?

i 不应该小于 1吗?  而 j不应该小于2吗 ? 理解不过来,望指教

正在回答

2 回答

这是一个两行三列的二维数组,第一行数为 1 2 3

第二行数为4 5 6

j定义的是列的元素索引,i定义的是行的元素索引,names[i].length指的是第i行的长度,(你可以把此时的i理解为一个数组),j小于第i行的长度,你才能将i行的元素依次全都输出(行决定列)

如此题,names[0].length即第一行长度为3,j取值为0,1,2 再syso输出[0][0],[0][1],[0][2]

1 回复 有任何疑惑可以回复我~
#1

别人_2 提问者

懂了,j<names(i)取得值是第i行的最大列数
2016-07-18 回复 有任何疑惑可以回复我~

j为列数,可能取值为0,1,2;

i为行数,可能取值为0,1;

i.length 行的长度,长度为2

1 回复 有任何疑惑可以回复我~
#1

别人_2 提问者

谢谢。
2016-07-18 回复 有任何疑惑可以回复我~
#2

shaozhehaohao

错了!! i和j指的是数组的下标,names[i].length指的是行的长度,names[j].length指的是列的长度,names[i].length实际上等于i+1(因为下标是从0开始的,当下标为0时,就指的是第1行)
2016-07-20 回复 有任何疑惑可以回复我~
#3

shaozhehaohao 回复 shaozhehaohao

纠正,被你搞晕了!! names.length才是行数! names[i].length才是列数! names[i].length是行的长度,实际就是列数,如:int[][] num={{1,2,3},{4,5,6,}}; 当i=0时,对应num[0]即{1,2,3}这个数组,这是第1行数组,行数是从1开始的,下标才是从0开始的;这是个【二维】数组,{1,2,3}这个数组是大数组里面的小数组,因为是先把{1,2,3}这个数组看成了一个整体,所以才用下标i来定位的。
2016-07-20 回复 有任何疑惑可以回复我~
#4

shaozhehaohao 回复 shaozhehaohao

一维数组{1,2,3} 当i=0时 定位到1; 二维数组{{1,2,3},{4,5,6,}} 当i=0时 定位到{1,2,3};
2016-07-20 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

为什么 j < names[i].length?

我要回答 关注问题
微信客服

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

帮助反馈 APP下载

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

公众号

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