多维数组的使用

1、二维数组的理解
对于二维数组的理解,我们可以看成是一维数组array1又作为另一个一维数组array2的元素存在。
其实,从数组底层的运行机制来看,其实没有多维数组。 *
2、
1)二维数组的声明和初始化
2)如何调用数组的指定位置的元素
3)如何获取数组的长度
4)如何遍历数组
5)数组元素的默认初始化值
6)数组的内存解析

public class ArrayTest02 {
	public static void main(String[] args) {
		//二维数组的声明和初始化
		int[] arr1=new int[]{1,3,4};//一维数组
		
		//静态初始化
		int [] []arr2=new int[][]{{1,2,3},{4,6},{6,7,8}};
		
		//动态初始化
		String [][]arr3=new String[2][3];
		//动态初始化
		String [][]arr4=new String[2][];
		//错误的情况
//		String [][]arr5=new String[][3];
		
		//正确的情况
		int []arr5[]=new int [][]{{1,2,3},{4,6},{6,7,8}};
		int []arr6[]={{1,2,3},{4,6},{6,7,8}};
		
		//如何调用数组的指定位置的元素
		System.out.println(arr2[0][1]);//2
		System.out.println(arr2[1][1]);//6
		
		//获取数组的长度
		System.out.println(arr2.length);//3
		System.out.println(arr2[2].length);//3
		System.out.println("======");
		//如何遍历二维数组
		for(int i=0;i<arr2.length;i++){
			for(int j=0;j<arr2[i].length;j++){
				System.out.print(arr2[i][j]+"  ");
			}
			System.out.println();
		}
		
	}

}

1、二维数组的使用

  • 规定:二维数组分为外层数组元素,内存数组元素
  •  int [] []arr=new int[2][2];
    
  •  外层元素:arr[0],arr[1]等
    
  •  内层元素:arr[0][0],arr[1][2]等
    
  • 数组元素的默认初始化值
  • 针对于初始化方式一:比如int[][]arr=new int[2][3];
  •  内层元素的初始化值为:地址值
    
  •  外层元素的初始化值为:与一维数组初始化情况相同
    
  • 针对于初始化方式二:比如int [][]=new int [2][];
  •  内层元素的初始化值为:不能调用,否则报错
    
  •  外层元素的初始化值为:null
    
public class ArrayTest03 {
	public static void main(String[] args) {
		//数组元素的默认初始化值’
		int arr[][]=new int[4][3];
		System.out.println(arr[0]);//地址值[I@15db9742
		System.out.println(arr[0][0]);//0
		System.out.println(arr);//地址值[[I@6d06d69c
		
		
		System.out.println("---------------");
		float arr1[][]=new float[4][3];
		System.out.println(arr1[0]);//地址值
		System.out.println(arr1[0][0]);//0.0
		System.out.println(arr1);
		
		
		System.out.println("---------------");
		String [][]arr2=new String [2][4];
		System.out.println(arr2[1]);//地址值
		System.out.println(arr2[1][1]);//null
		
		System.out.println("分割线");
		String[][]arr3=new String[3][];
		System.out.println(arr3[1]);//null
		
		System.out.println("分割线");
		double[][]arr4=new double[3][];
		System.out.println(arr4[1]);//null
		System.out.println(arr4[1][2]);//NullPointerException
	}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值