数组---二维数组

本文详细介绍了Java中二维数组的概念、格式和内存图解,包括格式1、2、3,并通过遍历和求和两个练习展示了二维数组的操作。在求和练习中,给出了公司年销售额的求和问题;在打印杨辉三角形的练习中,阐述了其生成规则并提供了实现步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二维数组

二维数组其实就是每一个元素为一维数组的数组。

二维数组格式1
数据类型[][] 变量名 = new 数据类型[m][n];
	m表示这个二维数组有多少个一维数组 必须写上
	n表示每一个一维数组的元素个数 可选
	举例:
		int[][] arr = new int[3][2];
		定义了一个二维数组arr
		这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2]
		每个一维数组有2个元素,可以通过arr[m][n]来获取
			表示获取第m+1个一维数组的第n+1个元素
注意事项
以下格式也可以表示二维数组
		a:数据类型 数组名[][] = new 数据类型[m][n];
		b:数据类型[] 数组名[] = new 数据类型[m][n];
		这两种格式不推荐使用
二维数组格式1的内存图解

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WcLe6CVB-1570699764026)(https://puui.qpic.cn/fans_admin/0/3_267840583_1570697167644/0)]

二维数组格式2
	数据类型[][] 变量名 = new 数据类型[m][];
		m表示这个二维数组有多少个一维数组
		这一次没有直接给出一维数组的元素个数,可以动态的给出。
	举例:
		int[][] arr = new int[3][];
		arr[0] = new int[2];
		arr[1] = new int[3];
		arr[2] = new int[1];
二维数组格式2的内存图解

二维数组格式3
		数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}...};
	简化版:
		数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
	这个格式属于静态初始化:由我们指定具体的元素值,由系统给分配长度
		举例: 
			int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
			int[][] arr = {{1,2,3},{5,6},{7}};
二维数组练习1遍历

​ 外循环控制的是二维数组的长度,其实就是一维数组的个数。
​ 内循环控制的是一维数组的长度。

二维数组练习2求和
A:

​ 需求:公司年销售额求和
​ 某公司按照季度和月份统计的数据如下:单位(万元)
​ 第一季度:22,66,44
​ 第二季度:77,33,88
​ 第三季度:25,45,65
​ 第四季度:11,66,99

B:

​ 需求:打印杨辉三角形(行数可以键盘录入)

	1
	1 1	
	1 2 1
	1 3 3 1
	1 4 6 4 1 
	1 5 10 10 5 1
分析:

​ A:任何一行的第一列和最后一列都是1
​ B:从第三行开始,每一个数据是它上一行的前一列和它上一行的本列之和。

步骤:

​ A:首先定义一个二维数组。行数如果是n,我们把列数也先定义为n。
​ 这个n的数据来自于键盘录入。
​ B:给这个二维数组任何一行的第一列和最后一列赋值为1
​ C:按照规律给其他元素赋值
​ 从第三行开始,每一个数据是它上一行的前一列和它上一行的本列之和。
​ D:遍历这个二维数组。

键盘录入。
​ B:给这个二维数组任何一行的第一列和最后一列赋值为1
​ C:按照规律给其他元素赋值
​ 从第三行开始,每一个数据是它上一行的前一列和它上一行的本列之和。
​ D:遍历这个二维数组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值