阿里Java学习路线:阶段 1:Java语言基础-Java面向对象编程:第7章:数组的定义与使用:课时28:二维数组

在之前所定义的数组里面会发现只有一个“[]”,所以这个时候的数组就好像一行数据一样,可以利用下标进行行数据的访问。
传统的数组就好比一行数据,如果要想找到一个数据只需要确定一个下标即可。

下标 0 1 2 3 4 5 6
数据 890 90 91 789 65 768 897

如果说现在你需要的是一个多行多列的结构(表),则就需要通过两个下标才可以描述出一个数据,那么就需要有行下标与列下标共同定义才可以找到,所以这样的数组形式就称为二维数组。

下标 0 1 2 3 4 5 6
0 890 90 91 789 65 768 897
1 1 23 3 4 5 56 7
2 90 98 756 1 2 34 456

对于二维数组可以使用的定义语法如下:
数组的动态初始化:
数据类型 数组名称 [] [] = new 数据类型 [行个数] [列个数] ;
数组的静态初始化:
数据类型 数组名称 [] [] = new 数据类型 [] [] {{数据,数据,…},{数据,数据,…},{数据,数据,…},…};
范例:定义二维数组

public class ArrayDemo {
	public static void main (String args []) {
		int data [] [] = new int [] [] {
			{1,2,3,4,5},{1,2,3},{5,6,7,8}} ;
		for (int x = 0 ; x < data.length ; x++){
			for (int y = 0 ; y < data[x].length ; y ++)	{
				System.out.println("data["+x+"]["+y+"] = " + data [x][y]) ;
			}
			System.out.println() ; // 换行
		}
	}
}

既然二维数组的每一行都属于一个数组,那么这种情况下就可以通过每一行的数组求出数组长度。

索引(下标) 0 1 2 3 4
0 1 2 3 4 5
1 1 2 3
2 5 6 7 8

如果这个时候要求使用foreach来进行输出呢?
范例:使用foreach输出二维数组

public class ArrayDemo {
	public static void main (String args []) {
		int data [] [] = new int [] [] {
			{1,2,3,4,5},{1,2,3},{5,6,7,8}} ;
		for (int temp []: data) {
			for (int num : temp) {
				System.out.print(num + "、") ;
			}
			System.out.println() ;
		}
	}
}

通过foreach的输出格式可以清楚的观察到,二维数组的嵌套使用。随着开发技术的发展,如果要进行一些应用层的程序开发,那么很少会涉及到二维数组,更不用说更高级的多维数组。

你可能感兴趣的:(java,学习,阿里Java学习路线)