java二维数组的理解

2025-04-24 23:12:58
推荐回答(2个)
回答1:

这种for 循环是 jdk1.5 以后新增的特性,很强大的功能噢

for (int x[] : arr2) { //外层循环变量为一维数组
这句表示,用一个“ 一维数组” 变量“ X ”把“二维数组”变量“arr2”中的数据一组一组的提取出来,在你的示例中,它第一次循环提取 {4,3},第二次提取{1,2},提完第二组数据后就不再提取了,等价于:
for(int i=0; i int x[] = arr2[i];
}

for (int e : x) { //循环遍历每一个数组元素
这句表示用一个 int 类型的变量从一维数组变量 X 中的数据一个一个的提取出来,如当 X={4,3}时,e就依次提取(赋值)出4,3.它等价于:
for(int i=0; i int e=x[i];
}

if (e == x.length) { //判断变量是二维数组中的最后一个元素
因为 X 第二次获取数组是{1,2},其 x.length (也就是数组长度)是2,而二维数组最后一个元素值也是2,两者相等,刚好使得该 if 语句成立,这种数据是刻意设计出来的

回答2:

这个是JAVA1.5中的新特性,作用用来遍历集合的。
如:有集合 list
遍历的方式可以有
for(int i =0 ; i //遍历
Object obj = list.get(i);
}
现在有了foreach了可以简化为
for(Object obj : list){
}
这样遍历了,这里的冒号就是指的foreach ,就是说遍历list集合中的每一个Object对象obj