Java中一维数组和二维数组元素默认初始化值的判断

一、数组与数组元素

  1. Java中数组是引用类型
  2. 数组的元素可以是基本类型也可以是引用类型,弄清数组元素的类型可以帮助我们去理解数组元素默认初始化

二、一维数组

一维数组元素默认初始化值的情况分为两种,元素为基本数据类型引用数据类型

1. 元素为基本数据类型时

 1. 整型类型(byte、short、int、long) 默认的初始值都为0

 2. 浮点类型(float、double) 默认的初始值都为0.0

 3. 布尔型(boolean) 默认的初始值为flase

 4. 字符类型(char) 默认的初始值为0空字符

注意这里的0不同于整型类型的0更不是字符'0',这指的是下图ASCII码表中十进制的0
image

现在我们测试如下代码加深理解

public class Test {

	public static void main(String[] args) {
		char[] a = new char[2];
		
		if(a[0] == 0) {
			System.out.println("这是判断0的" + a[0] + "测试!");
		}
		
		if(a[0] == '0') {
			System.out.println("这是判断字符'0'的" + a[0] + "测试!");
		}

	}

}

运行结果如下
image
通过结果我们发现a[0]的值判断为0而非字符'0',打印输出时a[0]其实是一个空字符(这不是空格!!!)

2. 数组元素为引用类型时

 元素为引用类型时默认的初始值都为null

三、二维数组

Java中二维数组其实用一维数组作为数组的元素来构成的

二维数组默认初始化值的判读分为两种情况(下面两种情况的书写格式用int表示,int可以换成其他的数据类型)

1. int[][] arr = new int[2][2]

 ①外层元素(arr[0]arr[1]):地址值
 ②内层元素(arr[0][0]):利用一维数组默认初始值判断

2. int[][] arr = new int[2][]

 ①外层元素(arr[0]arr[1]):地址值
 ②内层元素(arr[0][0]):空指针异常

我们结合下面的图来理解,因为二维数组其实是数组的数组,外层保存的是地址值,内层自然就可以按照一维数组判断

image

ps:纯新人,个人学习记录使用,如果有什么问题欢迎在留言区留言

posted @ 2021-07-16 16:13  oneMoe  阅读(681)  评论(0编辑  收藏  举报