我们知道二维数组,是在一维数组的基础上进行了维度的增加。那么在实际使用的过程中,有时候我们所需要的二维数组,它们其中的维度是不同的,这就需要我们手动的进行设置。下面我们就来一起探究,二维数组在改变维度长度大小的方法,并辅以实例进行代码展示。
1、二维数组的每个元素都是一个一维数组,这些数组不一定都是等长的。声明二维数组的时候可以只指定第一维大小,空缺出第二维大小,之后再指定不同长度的数组。但是注意,第一维大小不能空缺(不能只指定列数不指定行数)。
public class ArrayTest4 { public static void main(String[] args) { //二维变长数组 int[][] a = new int[3][]; a[0] = new int[2]; a[1] = new int[3]; a[2] = new int[1]; //Error: 不能空缺第一维大小 //int[][] b = new int[][3]; } }
2、二维数组也可以在定义的时候初始化,使用花括号的嵌套完成,这时候不指定两个维数的大小,并且根据初始化值的个数不同,可以生成不同长度的数组元素。
public class ArrayTest5 { public static void main(String[] args) { int[][] c = new int[][]{{1, 2, 3},{4},{5, 6, 7, 8}}; for(int i = 0; i < c.length; ++i) { for(int j = 0; j < c[i].length; ++j) { System.out.print(c[i][j]+" "); } System.out.println(); } } }
实例扩展:
Java不指定长度的二维数组实例
import java.util.*; public class Tek { public static void main(String[] args) { int[][] a=new int[3][]; a[0]=new int[3];//相当于int[] a=new int[3] for(int i=0;i<a[0].length;i++) a[0][i]=i+1; a[1]=new int[4]; for(int i=0;i<a[1].length;i++) a[1][i]=i+1; a[2]=new int[5]; for(int i=0;i<a[2].length;i++) a[2][i]=i+1; for(int i=0;i<a.length;i++) { for(int j:a[i]) System.out.print(j+" "); System.out.println(); } } }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)