




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第7章 多维数组2引言 chicago boston new york atlanta miami dallas houston distance table (in miles) chicago boston new york atlanta miami dallas houston 0 983 787 714 1375 967 1087 983 0 214 1102 1763 1723 1842 787 214 0 888 1549 1548 1627 714 1102 888 0 661 781 810 1375 1763 1549 661 0 1426 1187 967 1723 1
2、548 781 1426 0 239 1087 1842 1627 810 1187 239 0 1723 1548 781 1426 0 239 到目前为止,我们已经用一维数组如何存储线性的元素集合到目前为止,我们已经用一维数组如何存储线性的元素集合。我们还可以用一个二维数组表示矩阵或表。例如,下面的表。我们还可以用一个二维数组表示矩阵或表。例如,下面的表格,描述了城市之间的距离可以用一个二维数组表示。格,描述了城市之间的距离可以用一个二维数组表示。3学习目标f给出使用的二维数组表示数据的例子(给出使用的二维数组表示数据的例子(7.1节)。节)。f声明二维数组变量,创建数组,以及使用行下标和
3、列下标访问声明二维数组变量,创建数组,以及使用行下标和列下标访问二维数组中的数组元素(二维数组中的数组元素(7.2节)。节)。f编程实现常用的二维数组的操作数(显示数组,对所有数求和编程实现常用的二维数组的操作数(显示数组,对所有数求和,找出最小元素和,找出最小元素和 最大元素,以及随意打乱数组)(最大元素,以及随意打乱数组)(7.3节)。节)。f给方法传递二维数组(给方法传递二维数组(7.4节)。节)。f使用二维数组编写多选题评分程序(使用二维数组编写多选题评分程序(7.5节)。节)。f使用二维数组解决距离最近的点对问题(使用二维数组解决距离最近的点对问题(7.6节)。节)。f使用二维数组检
4、测一种九宫格的解决方案(使用二维数组检测一种九宫格的解决方案(7.7节)。节)。f使用多维数组(使用多维数组(7.8节)。节)。4声明/创建二维数组/ declare array ref vardatatype refvar; / create array and assign its reference to variablerefvar = new datatype1010; / combine declaration and creation in one statementdatatype refvar = new datatype1010; / alternative syntaxd
5、atatype refvar = new datatype1010; 5声明二维数组变量并创建二维数组 int matrix = new int1010;或 int matrix = new int1010; matrix00 = 3;for (int i = 0; i matrix.length; i+) for (int j = 0; j matrixi.length; j+) matrixij = (int)(math.random() * 1000);double x;6二维数组的例子 0 1 2 3 4 0 7 0 1 2 3 4 1 2 3 4 0 1 2 3 4 matrix21
6、 = 7; matrix = new int55; 3 7 0 1 2 0 1 2 int array = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ; 1 2 3 4 5 6 8 9 10 11 12 array.length? 4array0.length? 3matrix.length? 5matrix0.length? 57声明,创建和初始化一个二维数组声明,创建和初始化一个二维数组 也可以使用数组初始化来声明,创建和初始化一个二维数组,如下:int array = new int43;array00 = 1; array01 = 2; array02
7、 = 3; array10 = 4; array11 = 5; array12 = 6; array20 = 7; array21 = 8; array22 = 9; array30 = 10; array31 = 11; array32 = 12; int array = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12;same as8获取二维数组的长度 x x0 x1 x2 x00 x01 x02 x03 x10 x11 x12 x13 x20 x21 x22 x23 x.length is 3 x0.length is 4 x1.length is 4 x2.
8、length is 4 int x = new int34;9获取二维数组的长度续int array = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12;array.lengtharray0.lengtharray1.lengtharray2.lengtharray3.lengtharray4.length arrayindexoutofboundsexception10锯齿数组 二维数组中的每一行本身就是一个数组,因此,各行长度就可以不同。这样的数组称为锯齿数组,例如: int matrix = 1, 2, 3, 4, 5, 2, 3, 4, 5, 3, 4, 5
9、, 4, 5, 5; matrix.length is 5matrix0.length is 5matrix1.length is 4matrix2.length is 3matrix3.length is 2matrix4.length is 111锯齿数组续 1 2 3 4 5 int trianglearray = 1, 2, 3, 4, 5, 2, 3, 4, 5, 3, 4, 5, 4, 5, 5 ; 1 2 3 4 1 2 3 1 2 1 2 12处理二维数组看如下的例子:1.使用输入值初始化数组。2.使用随机值初始化数组。3.打印数组。4.求所有元素的和。5.对数组按列求和。6.
10、哪一行的和最大。7.随机打乱。13使用输入值初始化数组java.util.scanner input = new scanner(system.in);system.out.println(enter + matrix.length + rows and + matrix0.length + columns: );for (int row = 0; row matrix.length; row+) for (int column = 0; column matrixrow.length; column+) matrixrowcolumn = input.nextint(); 14使用随机值初始
11、化数组for (int row = 0; row matrix.length; row+) for (int column = 0; column matrixrow.length; column+) matrixrowcolumn = (int)(math.random() * 100); 15打印数组for (int row = 0; row matrix.length; row+) for (int column = 0; column matrixrow.length; column+) system.out.print(matrixrowcolumn + ); system.out.
12、println(); 16求所有元素的和int total = 0;for (int row = 0; row matrix.length; row+) for (int column = 0; column matrixrow.length; column+) total += matrixrowcolumn; 17对数组按列求和for (int column = 0; column matrix0.length; column+) int total = 0; for (int row = 0; row matrix.length; row+) total += matrixrowcolumn; system.out.println(sum for column + column + is +
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版监控系统维保合同范本
- 2024版单位车辆出租协议
- 2025年事业单位工勤技能-河北-河北水文勘测工四级(中级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-河北-河北工程测量工四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-广西-广西家禽饲养员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西医技工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西保健按摩师一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东动物检疫员五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东下水道养护工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-安徽-安徽机械冷加工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年湖南省直机关遴选公务员考试笔试试卷【附答案】
- 家电广告效果评估报告
- 锐澳RIO抖音dp运营方案
- 2025年乒乓裁判考试题及答案
- 输电线路路经复测安全、技术交底
- lpr利率管理办法
- 印刷装订车间管理办法
- 第三章 金融远期
- 课堂有效教学课件
- 规范诊疗培训课件
- 人教版七年级英语下册期末复习专练:短文填空(含答案解析)
评论
0/150
提交评论