java中的二维数组是什么 java 二维数组怎么定义
大家好,关于java中的二维数组是什么很多朋友都还不太明白,今天小编就来为大家分享关于java 二维数组怎么定义的知识,希望对各位有所帮助!
java 二维数组怎么定义
java中使用 [][]来定义二维数组,定义数组时也可同时初始化。
两种初始化形式:
格式1、动态初始化
数据类型数组名 [ ][ ]= new数据类型[m][n]
数据类型 [ ][ ]数组名= new数据类型[m][n]
数据类型 [ ]数组名 [ ]= new数据类型[m][n]
举例:int [ ][ ] arr=new int [5][3];也可以理解为“5行3例”。
格式2、静态初始化
数据类型 [ ][ ]数组名={{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};
举例:int [ ][ ] arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},}。
如何理解Java中的二维数组
二维数组可以看成是以一维数组为元素的一维数组。通常将最外层的一维数组称为外维数组;而作为元素的内层数组称为内维数组。如下:
//声明一个字符串类型的二维数组,其中外维数组的长度为3,内维数组的长度为2。
String[][] province= new String[3][2];
而二维数组的赋值与一维数组类似,它也可以通过中括号和索引来设置初始值,且索引从0开始。如下代码:
province[0][0]=“湖南”;
province[0][1]=“长沙”;
示例表示的是给二维数组province中第一个内维数组的第一个元素和第二个元素设置初始值。关于二维数组,秒秒学上有比较清楚的解释,你可以了解下的。
java中二维数组的初始化是什么
这样写是语法错误的,正确的写法是:\x0d\x0aString[][]a={\x0d\x0a{"1","2","3"},\x0d\x0a{"4","5","6"}\x0d\x0a};\x0d\x0a在讲一点数组的知识:\x0d\x0a26,一维数组的形式:(1),inta[];a=newint[5];等同于inta[]=newint[5];\x0d\x0a(2),int[]a;a=newint[5];等同于int[]a=newint[5];\x0d\x0a27,二维数组:inta[][]={{1,2},{3,4,5,6},{7,8,9}};二维数组可看成以数组为元素的数组。\x0d\x0ajava中多维数组的声明和初始化应按从高维到低维的顺序进行,如:\x0d\x0a方法(1);\x0d\x0ainta[][]=newint[3][];\x0d\x0aa[0]=newint[2];\x0d\x0aa[1]=newint[4];\x0d\x0aa[2]=newint[3];//正确\x0d\x0aintt[][]=newint[][4];//非法\x0d\x0a方法(2);\x0d\x0ainta[][]=newint[3][5];//正确,分配一个三行五列的二维数组。
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]);
}
}
如果你还想了解更多这方面的信息,记得收藏关注本站。