java二维数组(java创建一个二维数组)
大家好,今天小编来为大家解答以下的问题,关于java二维数组,java创建一个二维数组这个很多人还不知道,现在让我们一起来看看吧!
java定义二维数组的几种写法
下面给你介绍
//定义二维数组写法1
定义的同时分配空间大小
class numfour
{
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]);
}
}
//定义二维数组写法2不规则数组
class numfive
{
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维数组写法3定义的同时赋初始值
class numsix
{
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
}
}
//定义2维数组写法4定义不规则的2维数组同时赋初始值
class numseven
{
public static void main(String[] args)
{
int[][] numseven=new int[][]{{10,20,30},{40,50},{60}};//没什么好说的如果你在看不懂那就别学了!
System.out.println(numseven[0][2]);
System.out.println(numseven[1][1]);
System.out.println(numseven[0][0]);
}
}
//定义2维数组写法5定义不规则的2维数组同时赋初始值;
class numeight
{
public static void main(String[] args)
{
int[][] numeight={{100,200,300,400},{500,600,700,800},{900,1000,1100,1200,1300}};
System.out.println(numeight[0][2]);
System.out.println(numeight[1][2]);
System.out.println(numeight[2][1]);
}
}
Java二维数组如何使用
那是行和列的意思,例如: int[][] a= new int[3][5];//也就是说建立一个3行5列的二维数组你大概没弄明白java数组定义,多看看书,java中实际上没有多维数组的概念。只有一维数组。多维数组实际上是一维数组的数组。这和c++中的多维数组概念是不同的。举个例子:
int[][] int1=new int[3][2];
int1[i]引用第i个字数组,也就是二维表中的第i行。它本身也是一个数组,int1[i][i]引用这个数组的第j项。
对于 int[][] int1=new int[3][];
new语句执行后,int1被在栈中分配了空间,引用一个三维数组;三维
数组也被分配了空间(在堆中),三位数组的元素是指向int数组的引用;
而int数组没有分配空间,所以三维数组中的元素的值都是null。
java的二维数组
a[0]= new int[2];
因为是二维的
所以a是一个数组对象的数组引用(数组是对象)
a[0]是一个整型数组的数组引用
a[0][0]才是整型
所以上一句的意思是给这个整型数组引用分配一个整型数组
如果没那句
a[0]就是null
说得简单点,一维数组a[]的引用 a是一个对象引用,指向一个数组
二维的时候第二维类似上面一维,而第一维指向的不是具体数据的数组,而是一个引用的数组以此类推
三维的时候第一维指向一个二维数组引用的数组就像树一样,支上再长支,分叉,最后一级才是数据类型(叶子),其他的都是指向引用的数组
好比,家庭里人为基本数据类型在家庭(一维数组,把每个人编号)
在村里,以家庭编号,
在镇上,以村编号,而除了最低级别的人,其他都是不同维数的数组
OK,本文到此结束,希望对大家有所帮助。