欢迎光临散文网 会员登陆 & 注册

java多维数组的使用

2022-06-30 22:20 作者:虚云幻仙  | 我要投稿

/**
* 测试多维数组 即在数组的元素中存放数组
*/

public class Test7 {
   public static void main(String[] args) {
       //多维数组的默认初始化方式
       int[][] a = new int[3][];
       //二维数组两个[] 定义时第一个[]内写一维的空间 第二个[]空
       //定义后数组的第一维a[3]={null,null,null}

       a[0] = new int[2];
       a[1] = new int[3];
       a[2] = new int[4];
       //分别定义第二维数组
       //如果第二维数组空间一样大也可以new int[3][x]一起定义


       //多维数组静态初始化
       int[][] b = {{1,2,3},{4,5},{6,7,8}};
       //定义了第一维长度3,第二维分别为{1,2,3} {4,5} {6,7,8}

       //多维数组动态初始化
       int[][] c = new int[3][];
       c[0] = new int[]{1,2,3};
       //int[]代表第一维 {}的内容赋值给第二维
       //c[0] = {1,2,3}是错误的 格式要求必须声明第二维的类型new int[]
       c[1] = new int[]{4,5};
       //格式 c[x] = new int[]{x,x,x}
       c[2] = new int[]{6,7,8};
       //可以分别new int[x]分别for循环赋值

       System.out.println(c.length+"打印第一维数组的长度");
       System.out.println(c[1].length+"打印第二维数组的长度");

       Object[] o0 = {01,"张三",18,"无","1990-1-1"};
       //一切对象都属于Object类 用Object[]数组可以放多种类型的内容
       //数字01 18属于基本数据类型 通过包装类变为对象供Object[]数组使用

       Object[] o1 = {02,"李四",19,"有","1991-2-2"};
       Object[] o2 = {03,"王五",20,"无","1993-3-3"};
       Object[][] o = new Object[3][];
       o[0] = o0;
       o[1] = o1;
       o[2] = o2;
       //通过二维数组 存储表格数据
       for(int i = 0;i<o.length;i++){
           //.length 数组的长度 for循环遍历
           System.out.println(Arrays.toString(o[i]));
       }
       for(Object[] j:o){
           //for-each遍历
           System.out.println(Arrays.toString(j));
       }
       for(int i = 0;i<o.length;i++){
           //用嵌套循环打印
           System.out.print("[");
           for (int j =0;j<o[i].length;j++){
               System.out.print(o[i][j]+(j==o[i].length-1?"]\n":", "));
           }
       }

       for(int i = 0;i<o.length;i++){
           //查找大于等于19岁 打印
           if ((int)(o[i][2])<19)continue;
           //o是Object数组 所有元素都为Object 数字19不是Object 比较需要强制转换
           System.out.print("[");
           for (int j =0;j<o[i].length;j++){
               System.out.print(o[i][j]+(j==o[i].length-1?"]\n":", "));
           }
       }

   }
}

java多维数组的使用的评论 (共 条)

分享到微博请遵守国家法律