课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
for (int i = 0; i < names[i].length ; i++)
for (int j = 0; j < names[i].length; j++)
2018-08-26
源自:Java入门第一季(IDEA工具)升级版 6-9
正在回答
names[i].length表示的是每行的长度(也就是把二维数组拆分为一维数组,每个一维数组的长度),你写的代码之所以越界,是因为[行数<列数],所以可能会遇到这种情况,如果[行数=列数],就不会越界,不信你试试。
所以建议把第一个for循环内的names[i].length改成names.length。
_Timo_ 提问者
闻问切 回复 _Timo_ 提问者
sorry,把数组打成了列表了。。上面的回答把所有列表替换成数组即可。
你可以把names看成是有很多个子数组的大数组,names.length就是指这个列表里子列表的数量(长度),在这些子列表中,names[i]就是第i个子列表。所以names[i].length就是第i个子列表的长度。
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
3 回答为什么i=0,而循环时i++时显示出的第一个数是[0]?
3 回答for循环里的第一个;号
4 回答为什么for循环条件中i<=100和i%3!=0 不能一起写?
6 回答for(int i=1; i<=100;i++) 循环
2 回答这个i=i++为啥一直循环啊