Java__三维数组的运行思维

本文通过一个具体的三维数组示例,详细解释了如何定义和遍历三维数组。内容涵盖了数组的层次关系,从一维到二维再到三维的递进,并通过三层循环展示了遍历三维数组的过程。同时,强调了在不规则数组中不能简单用数字表示索引。最后,给出了完整的Java代码实现和运行结果,帮助读者深入理解三维数组的概念和操作。
摘要由CSDN通过智能技术生成

三维数组

	int[][][] Pro1 = {
		{
			{10,132,53,634,19},
			{11,33,433,543,18},
			{234,345,53,65,17},
			{33,980,132,53,16}
		},
		{
			{201,345,53,65,15},
			{11,211,33,433,14},
			{124,10,53,13},
			{135,32,53,631,12}
		},
		{
			{30,4,10,132,11},
			{21,5,32,533,21},
			{22,1,33,433,41},
			{23,10}
		}
};
	for(int i=0;i<Pro1.length;i++)
	{
		for(int j=0;j<Pro1[i].length;j++)
		{
			for(int k=0;k<Pro1[i][j].length;k++) 
			{
				System.out.print(Pro1[i][j][k]+"\t");
			}
			System.out.println();
		}
		System.out.println();
	}

    三维数组由二维数组衍生过来,同样二维数组由一维数组衍生过来,所以这样理解起来,三维数组也不是那么的难啃。同样多维数组也是这个思维。
首先是定义一个三维数组:

int[][][] Pro1 = {
{
	{10,132,53,634,19},
	{11,33,433,543,18},
	{234,345,53,65,17},
	{33,980,132,53,16}
},
{
	{201,345,53,65,15},
	{11,211,33,433,14},
	{124,10,53,13},				
	{135,32,53,631,12}			
},
{
	{30,4,10,132,11},
	{21,5,32,533,21},		//如果数组长宽整齐,则可以使用数字来取i,j,k;
	{22,1,33,433,41},       //而本组中的元素不整齐,故不能使用数字来赋给i,j,k;否则系统会报错
	{23,10}
}

    直接利用三层循环遍历(为方便演示,本次以int型为例)

    第一层循环:
        直接将三维数组的第一部分看成一维数组,则一维数组内的元素为3个二维数组;即一维数组的长度为即Pro1.length(当成三维数组的高)。
     第二层循环:
        直接将三维数组的第二部分看成三个二维数组,则每个二维数组内的元素为4个一维数组;即二维数组的长度为Pro1[i].length(即Pro1[i].length行)。
     第三层循环:
        直接将三维数组的第三部分看成12个一维数组(12行),则每个一维数组都只有一行Pro1[i][j].length个(Pro1[i][j].length列)元素。
完整代码:


```java
public class Array1 {
	public static void main(String[] args) {
		int[][][] Pro1 = {
			{
				{10,132,53,634,19},
				{11,33,433,543,18},
				{234,345,53,65,17},
				{33,980,132,53,16}
			},
			{
				{201,345,53,65,15},
				{11,211,33,433,14},
				{124,10,53,13},
				{135,32,53,631,12}
			},
			{
				{30,4,10,132,11},
				{21,5,32,533,21},
				{22,1,33,433,41},
				{23,10}
			}
	};
		for(int i=0;i<Pro1.length;i++)
		{
			for(int j=0;j<Pro1[i].length;j++)
			{
				for(int k=0;k<Pro1[i][j].length;k++) 
				{
					System.out.print(Pro1[i][j][k]+"\t");
				}
				System.out.println();
			}
			System.out.println();
		}
	}
}

代码运行:

```java
10	132	53	634	19	
11	33	433	543	18	
234	345	53	65	17	
33	980	132	53	16	

201	345	53	65	15	
11	211	33	433	14	
124	10	53	13	
135	32	53	631	12	

30	4	10	132	11	
21	5	32	533	21	
22	1	33	433	41	
23	10

    二维数组我们以行、列为循环遍历先后顺序。同样三维数组利用循环嵌套可以理解为先后顺序为 高、行、列。

    同样也利用数学思维 高、长、宽来理解:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值