二维数组心得

文章目录

这里简单概述一下二位数组的用法,各个地方的意义,和可能造成的问题,java新手,有错请联系

定义

 一个二维数组可以说是一维数组的嵌套。就是在一个一维数组里再套一个一维数组。

形式

作为二维数组,要了解其各个写法。

		1. String [][] string1 = new String[4][5];
		2. String [][] string2 = new String [4][];
		3. String [][] string 3 = {{},{}};
		4. String [][] string 4 = new String[][]{{},{}};

意义

	1.  行和列
			这个在做算法题或者平常的考试中会经常用到,第一个值代表行,第二个值是列。	这里要注意使用的时候不要造成行列的下标越界。

			行是   如形式中1 :   可以使用  string1.length 来获取行数
			列是  如 形式中1 :  可以使用string1[1].length 来获取列数

	2.  地址和值
		
		从另一方面说,数组中第一个值存储的是地址,第二个值存储的是在值(这里把一维数组看成一整个值),即 由地址指向一维数组。
		这就出现一个问题,当为形式2的时候,即 存在第一个值,不存在第二个值。那是不是说,你有一个地址,但是这个地址指向的空间没值,
		并且因为你是一维数组整体是空,所以会出现咱们常说的空指针异常。
		
		简单来说,第一个值就像这个地基,在这个地基上要盖名为多个一维数组的楼,一维数组上的值则为一个个房间。但是当房客(这里指
		运行时候的计算机)去这个地基上看房的时候,发现这个地方,只有一个地基在那里,甚至烂尾楼都没有,也就看不了里面的房子(这里
		就不是一维数组的默认值),所以只能指着地基那片空地在那里报警察,说诈骗,然后警察来了(返回给计算机空指针异常,警告你了)。

		在形式1,3,4中 不会出现这种情况。			
上一篇:《Spring源码深度解析 郝佳 第2版》容器的基本实现与XML文件的加载


下一篇:谷粒学苑项目第一天-配置Swagger2进行接口测试