• 【转】java中定义二维数组的几种写法


    原文链接

    注:以下的 type[][] var 也可以这样申明 type var[][]
    type为数组的类型,var为变量名

    写法一:行列固定的数组

    //定义二维数组写法1 
    class Test
    {
        public static void main(String[] args)
        {
            float[][] numthree;       //定义一个float类型的2维数组
            numthree=new float[5][5]; //为它分配5行5列的空间大小
            numthree[0][0]=1.1f;      //通过下标索引去访问   1行1列=1.1
            numthree[1][0]=1.2f;      // 2行1列=1.2
            numthree[2][0]=1.3f;      // 3行1列=1.3
            numthree[3][0]=1.4f;      // 4行1列=1.4
            numthree[4][0]=1.5f;      // 5行1列=1.5
            System.out.println(numthree[0][0]); //打印
            System.out.println(numthree[1][0]);
            System.out.println(numthree[2][0]);
            System.out.println(numthree[3][0]);
            System.out.println(numthree[4][0]);
        }
    }

    写法二:定义的同时分配空间大小

    
    //定义二维数组写法2  定义的同时分配空间大小
    class Test
    {
        public static void main(String[] args)
        {
              short[][] numfour=new short[5][8]; //定义一个short类型的数组同时为它分配5行8列的空间大小
              numfour[0][7]=10;
              numfour[1][6]=20;
              numfour[2][5]=30;
              numfour[3][4]=40;
              numfour[4][3]=50;
              System.out.println(numfour[0][7]);
              System.out.println(numfour[1][6]);
              System.out.println(numfour[2][5]);
              System.out.println(numfour[3][4]);
              System.out.println(numfour[4][3]);
        }
    }

    写法三:不规则数组

    //定义二维数组写法3    不规则数组
    class Test
    {
        public static void main(String[] args)
        {
            long[][] numfive=new long[5][];   //定义一个long类型的不规则数组
            numfive[0]=new long[5];       //为第1行分配5列
            numfive[1]=new long[6];       //为第2行分配6列
            numfive[2]=new long[7];       //为第3行分配7列
            numfive[3]=new long[8];       //为第4行分配8列
            numfive[4]=new long[9];       //为第5行分配9列
            numfive[0][4]=10000000000L;     //1行5列=10000000000
            numfive[1][5]=20000000000L;     //2行6列=20000000000
            numfive[2][6]=30000000000L;     //3行7列=30000000000
            numfive[3][7]=40000000000L;     //4行8列=40000000000
            numfive[4][8]=50000000000L;     //5行9列=50000000000
            System.out.println(numfive[0][4]); //打印
            System.out.println(numfive[1][5]);
            System.out.println(numfive[2][6]);
            System.out.println(numfive[3][7]);
            System.out.println(numfive[4][8]);
            System.out.println(numfive[4][7]); //打印输出一个没有定义数组元素的数组 Java会自动将他初始化值为0
        }
    }

    写法四:定义的时候就赋值

    //定义2维数组写法4  定义的同时赋初始值
    class Test
    {
        public static void main(String[] args)
        {
            double[][] numsix={{1.111D,2.222D,3.333D},{4.444D,5.555D,6.666D}};//定义double型的数组分配3行3列的空间同时赋值
            System.out.println(numsix[0][0]); //打印换行输出1行1列=1.111
            System.out.println(numsix[1][1]); //打印换行输出2行2列=5.555
        }
    }
    http://huangxiutao.cn
  • 相关阅读:
    Codeforces 722C. Destroying Array
    Codeforces 722D. Generating Sets
    【BZOJ】3436: 小K的农场
    数论四·扩展欧几里德
    数论三·约瑟夫问题
    数论二·Eular质数筛法
    #1287 : 数论一·Miller-Rabin质数测试
    树的维护
    可持久化线段树
    【NOIP2016】天天爱跑步
  • 原文地址:https://www.cnblogs.com/ss0xt/p/8569778.html
Copyright © 2020-2023  润新知