前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >细说Java中的二维及多维数组

细说Java中的二维及多维数组

作者头像
算法与编程之美
发布2021-12-01 21:18:29
1.4K0
发布2021-12-01 21:18:29
举报

1引言

在Java学习中,数组是我们的常遇见的表现形式,相信大家对于一维数组已经得心应手了,那么,多维的数组呢?以简单的来说,二维又如何表现呢?在二维之后的多维数组呢?

2 问题

介绍多维数组,以及如何表现及应用。

3方法

理解二维数组,首先要先理解一维数组是什么。一维数组是个容器,存储相同数据类型的容器(这里不再做一位数组的具体介绍)。二维数组就是用来存储一维数组的数组,一维数组的存储数据类型是基本数据类型和引用数据类型,二维数组的存储数据类型是引用数据类型(一维数组是引用数据类型)。也就是:二维数组是存储一维数组的数组,二维数组里面的元素都是数组,二维数组来存储一维数组。二维数组的声明方式与内存分配方式与一维数组相似,格式为:数组名= new 数据类型[行数][列数] ,“行数”是告诉编译器所声明的数组有多少行,“列数”是声明每行中有多少列。例如:int0[][] a = new int [3][4];上面两行代码声明了一个二维的整型数组 a 并分配一块内存空间,是一个3行4列的整型数组。与一维数组类似,也可以用较为简洁的方式来声明二维数组,格式如下:数据类型0数组名= new 数据类型[行数][列数];以这种方式声明的数组,在声明的同时就分配一块内存空间,供该数组使用。例如: int [][] a = new int [3][4]。

三维以上的多维数组通过对二维数组的介绍不难发现,要想提高数组的维数,只要在声明数组的时候将下标与中括号再加一组即可,所以三维数组的声明为“ int [][][]a ;”,而四维数组的声明为“ int [][][][]a:”,依此类推。当使用多维数组时,输入输出的方式和一维数组、二维数组相同,但是每多一维,嵌套循环的层数就必须多一层,所以维数越高的数组其复杂度也就越高。

4实验结果与讨论

例题:输出一个二维数组,并计算二维数组元素的所有和

代码清单 1

代码语言:javascript
复制

public class DeMo_arr {
   public static void main(String[] args) {
       int sum = 0;
       int[][] a = new int[4][4];
       System.out.println("这是二维数组:\n");
       for (int i = 0; i < a.length; i++) {
           for (int m = 0; m < a[i].length; m++) {
               a[i][m] = i * 4 + m;
               System.out.print(a[i][m] + "    ");
               sum += a[i][m];
               System.out.println("  ");
           }
       }
       System.out.println("二维数组的和为:" + sum);
   }
}

5结语

数组为Java学习的一个极为重要的组成部分,深刻理解它将极大地加深我们的理解,使得可以准确的理解并应用数组。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档