版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
人民邮电出版社4数组Java程序设计第章导读Introduction用数组可以保存多个数据。数组中每一项称为一个元素,一个数组中包含多个元素,每一个元素相当于一个变量,所以使用数组可以表示大量的数据。C目录ONTENTS4.2多维数组4.3命令行参数4.1一维数组4.4可变参数列表4.5小结4.1.1一维数组的声明数组用一个标识符和下标来表示,下标可以区分数组中不同的元素。如果一个数组只有一个下标,则称为一维数组。有两个下标,则为二维数组。一般只用到三维数组,而一维和二维数组较常用。数据类型[]数组名;或数据类型数组名[];数组使用前必须先声明。声明数组的语法形式:4.1.1一维数组的声明例如:注意,下标[]在数组名前或在数组名后是有区别的。如:int[]a,b;//a和b都是一维数inta[],b[];inta[],b;//a是一维数组名,而b是普通变量。4.1.2为一维数组分配空间new数据类型[数组长度]要想使用这个数组,可以与前面声明的数组名结合,通过数组名访问数组中的元素。如:数组声明后并没有内存空间。如果想真正使用一个数组,必须为一维数组分配内存空间,即创建一维数组。创建一维的语法形式:a=newint[10];也可以将数组声明与创建写成一条语句:inta[]=newint[10];4.1.3数组的内存模型表达式“newint[10]”创建了一个数组,同时该表达式的值是数组在内存中的地址。赋值表达式“a=newint[10]”是将数组的起始地址保存在变量a中。因此,访问变量a就可以得到数组在内存中的起始地址,从而可以访问到数组中的各个元素。4.1.4访问一维数组元素数组名[下标表达式]最小下标为0,最大下标为“数组长度-1”创建数组后就可以使用数组中的元素了。数组中元素的访问方式为:任何一个数组都有属性length。【例4.1】一维数组的使用。Example4_01.java4.1.5
一维数组初始化数据类型数组名[]={初始值表列};例如:在声明数组名时,直接为数组元素赋初值,称数组初始化。数组初始化的语法形式:inta[]={1,3,5,7,9};4.1.5
一维数组初始化【例4.2】将若干个整数按由小到大的顺序排列。本例中采用选择法排序。基本方法:第一趟1022-527342
↑
↑
i
k第二趟-5222107342
↑↑
ik
4.1.5
一维数组初始化如果有n个数需要排序,则需要进行n-1趟的排序。第i趟的排序需要进行n-i次比较。Example4_02第三趟-5210227342
↑
i,k
第四趟-5210227342
↑↑
ik4.1.6
使用增强型循环访问数组元素for(变量a的声明:数组名)循环体循环执行时,会将数组的当前元素赋给变量a,在循环体中使用变量a就相当于使用数组中的某一个元素。除了第3章讲过的for语句外,还有一种增强型的for循环,其语法形式如下:【例4.3】增强型的for循环。Example4_03.javaC目录ONTENTS4.2多维数组4.3命令行参数4.4可变参数列表4.1一维数组4.5小结4.2.1
二维数组的声明有两个或两个以上下标的数组称为多维数组。本节只讲二维数组的定义和使用。二维数组的声明形式为:数据类型数组名[][];或数据类型[][]数组名;或数据类型[]数组名[];例如:inta[][],b[];注意:inta[][],b;int[]a[],b;int[][]a,b;4.2.2为二维数组分配空间一个二维数组各行的元素个数都一样,可以像下面形式分配内存空间:inta[][]=newint[3][4];如果二维数组各行的元素个数不一样,则需要为每一行单独分配内存空间。如:inta[][]=newint[3][];a[0]=newint[3];//第0行有3个元素a[1]=newint[5];//第1行有5个元素a[2]=newint[8];//第2行有8个元素4.2.3访问二维数组元素创建数组后,就可以访问数组中的元素了。访问形式为:数组名[下标表达式1][下标表达式2]下标同样是从0开始,不能越界。
通过访问属性length可以知道一个二维数组有几行、每一行有多少个元素。如a是一个二维数组,则a.length的值是数组的行数,a[i].length是第i行元素的个数。【例4.4】访问二维数组,输出数组地址和数组元素。Example4_04.java4.2.4二维数组初始化在声明二维数组的同时也可以给数组各元素赋初值。初始化形式:数据类型数组名[][]={初值表列};初始化时每一行的元素值应该单独用{}括起来:inta[][]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};intb[][]={{2,4},{6,8,10},{12,14,16,18}};【例4.5】编程序实现两个矩阵的乘法运算。Example4_05.javaC目录ONTENTS4.2多维数组4.3命令行参数4.1一维数组4.4可变参数列表4.5小结4.3.1命令行参数的概念如果程序在运行过程中需要数据,可以通过输入设备输入数据。如果程序在开始运行时,就需要输入数据,则可以将数据作为命令的参数输入给程序。多数情况下,按下面形式运行一个Java程序:c:\>javaExample4_06则后面的“123”、“Beiing”、“Road”称为命令“Example4_06”的参数。“javaExample4_06”是命令行。Example4_06是一个Java程序,但是从操作系统看,它是一个命令。如果运行时写成下面的形式:c:\>javaExample4_06123BeijingRoad4.3.2命令行参数的获取与使用任何一个程序都必须有main方法,main方法的定义形式为:publicstaticvoidmain(Stringargs[]){}程序在运行时,操作系统会将命令行参数依次放入到对象数组的每一个元素中。【例4.6】通过命令行输入两个整数,计算这两个整数的和。
Example4_06.javaC目录ONTENTS4.2多维数组4.3命令行参数4.1一维数组4.4可变参数列表4.5小结
Java给方法提供了可变长参数(varargs)的形式。形式如下:返回类型方法名(一般形式的形参列表,形参类型...可变长形参名){......}
说明:可变长的参数,必须在最右侧,并且这样的参数中只能一个。【例4.7】通过命令行输入若干个整数,计算这些整数的和。
Example4_07.java小结Summary使用数组可以在程序中表示大量的数据。数组可以是一维、二维、三维、或更高维,一般地一维和二维数组较常使用。数组在使用之前必须先声明数组名、使用new运算符创建数组,也可以通过初始化的方式创建数级,数组创建后就可以使用数组中的元素了。访问数组元素时下标不能越界,任何一个数组都可以通过数组名访问属性length确定数组的长度。如果想在程序开始运行时就给程序输入数据,可以通过在命令行放置参数的方式实现。人民邮电出版社谢谢观赏Java程序设计海量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026河北唐山兰海楠天高级中学招聘教师16人备考题库及1套参考答案详解
- 2026广西玉林市兴业县龙安镇卫生院招聘编外人员1人备考题库参考答案详解
- 2025下半年广东省鹤山市招聘医疗卫生专业技术人员47人备考题库及答案详解(新)
- 2026年阜阳临泉县面向公费师范毕业生招聘教师18人备考题库完整答案详解
- 2025河南郑州郑东新区春华学校教育集团(商鼎校区)招聘备考题库及答案详解(易错题)
- 2026中国共产党玉溪市红塔区委员会党校招聘毕业生1人备考题库(云南)及答案详解(易错题)
- 2026四川绵阳长虹国际酒店有限责任公司员工长期招聘5人备考题库及参考答案详解一套
- 2025浙江金华市义乌市属国有企业解说员招聘6人备考题库及答案详解(夺冠系列)
- 2026广东广州市天河区华南师范大学招聘教辅人员2人备考题库及答案详解参考
- 2026广西河池市广电网络科技发展有限公司大化分公司招聘4人备考题库及答案详解(考点梳理)
- 2.3.2中国第一大河长江
- TCEPPC 25-2024 储能锂离子电池热失控预警及防护技术要求
- 宫颈息肉个案护理
- 资源土猪出售合同协议
- (高清版)DB50∕T 867.30-2022 安全生产技术规范 第30部分:有色金属铸造企业
- 九年级化学上册 2.4 元素(2)教学设计 (新版)鲁教版
- (二调)武汉市2025届高中毕业生二月调研考试 生物试卷(含标准答案)
- 2024-2025学年天津市和平区高三上学期1月期末英语试题(解析版)
- (康德一诊)重庆市2025届高三高三第一次联合诊断检测 地理试卷(含答案详解)
- 真需求-打开商业世界的万能钥匙
- 伤寒论398条条文
评论
0/150
提交评论