黑马程序员技术交流社区

标题: for each循环 [打印本页]

作者: 胡滨    时间: 2013-4-10 18:48
标题: for each循环
本帖最后由 胡滨 于 2013-4-10 20:12 编辑

用for each输出一维数组
for(int i:a)       //a是一维的数组
System.out.println(i);

如果想输出二维,三维数组,怎么实现?(for each 方式)





这里是解决问题的好地方啊,效率很高,我去百度提问都没人理。

作者: 肖明凯    时间: 2013-4-10 19:03
和普通的for语句一样,嵌套使用就可以了吧
  1. public class TestArray {

  2. public static void main(String[] args) {
  3.   // 定义一个长度为10的数组
  4.   int a[][] = new int[10][8];
  5.   // 为数组中每个元素赋值
  6.   for (int i = 0; i < a.length; i++) {
  7.    for (int j = 0; j < a[i].length; j++)
  8.     a[i][j] = i * j;

  9. }
  10.   
  11.   //用泛型遍历输出数组
  12.   for(int[] arr : a){
  13.    for(int arr2 : arr){
  14.     System.out.print(arr2+"\t");
  15.    }
  16.    //每打印完一个a[i][0]-a[i][8]就换行
  17.    System.out.println();
  18.   }
  19. }

  20. }
复制代码
希望能帮到你。
作者: 绿树林    时间: 2013-4-10 19:41
public class Test {

        public static void main(String[] args) {
                // 定义一个二维数组和三维数组
                int a[][] = { { 11, 22 }, { 33, 44 }, { 55, 66 } };
                int b[][][] = { { { 111, 222 }, { 333, 444 } },
                                { { 555, 666 }, { 777, 888 } } };

                // 遍历输出二维数组
                for (int[] arr : a) {
                        for (int arr2 : arr)
                                System.out.print(arr2 + "\t");
                }
                System.out.println();
                // 遍历输出三维数组
                for (int[][] arr : b) {
                        for (int[] arr1 : arr)
                                for (int arr2 : arr1)
                                        System.out.print(arr2 + "\t");
                }
        }

}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2