java二维数组foreach语句问题 for(int x:a) if(x==a.length) //不是很明白
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java二维数组foreach语句问题 for(int x:a) if(x==a.length) //不是很明白相关的知识,希望对你有一定的参考价值。
public class Tautog
public static void main(String args[])
int[][]arr=3,5,1,2,6,5,8,9;
for(int[]a:arr)
for(int x:a)
if(x==a.length)
System.out.print(x);
else
System.out.print(x+" ");
foreach代表高级for循环,是for循环的简化写法,可以遍历集合、数组
我把foreach分解代码给你写在下面吧
public class Tautogpublic static void main(String args[])
int[][]arr=3,5,1,2,6,5,8,9;
for(int i = 0;i<arr.length;i++)
for(int j = 0;j<arr[i].length;j++)
int x = arr[i][j];
if(x==arr[i].length)
System.out.print(x);
else
System.out.print(x+" ");
参考技术A 如果数组中元素的值等于该数组的长度。 参考技术B for(int x:a)
增强for循环 x为a的一个元素
有关Java里面foreach的问题,我是小白,各位高手告诉下,谢谢
public class Tautog //创建类
public static void main(String[] args) //主方法
int arr2[][] = 4, 3 , 1, 2 ; //定义二维数组
System.out.println("数组中的元素是:"); //提示信息
for (int x[] : arr2) //外层循环变量为一维数组
f or (int e : x) //循环遍历每一个数组元素
if (e == x.length) //判断变量是二维数组中的最后一个元素
System.out.print(e); //输出二维数组的最后一个元素
else //如何不是二维数组中的最后一个元素
System.out.print(e + "、"); //输出信息
我想问下if (e == x.length) //判断变量是二维数组中的最后一个元素这句里面,e是元素为什么可以和长度相等,这句该怎么解释啊?谢谢
那个说明我知道,可是如果最后一个是5,前面也有5,那当e是前面的5时也会出现判断错误的情况,这个最后一个是无论怎样都会输出,但这个是一个条件,区别在于后面那句,如果是最后一个那没有顿号,不是最后一个有顿号!
if (e == x.length) //判断变量是二维数组中的最后一个元素
就可以了 参考技术A e是元素2,而x.length是数组长度2,如此而已,你将最后一个元素改为5,然后在if(e==x.length)中写System.out.println("最后一个元素");
System.out.printl(e);你看看最后一个元素是否会输出;
还有无论e==x.length是否成立,最后一个元素都会输出,你根本就无法判断e==x.length是否成立了。 参考技术B 这个算法是错的~~~我只能这么说,虽然结果一样 参考技术C 应该不能这样比较的
在这个例子中刚好最后一个元素是2,而且长度也是2 参考技术D 这个 你还是看看书吧 亲。。
以上是关于java二维数组foreach语句问题 for(int x:a) if(x==a.length) //不是很明白的主要内容,如果未能解决你的问题,请参考以下文章