2017年计算机二级考试java章节辅导:一维数组的初始化_第1页
2017年计算机二级考试java章节辅导:一维数组的初始化_第2页
2017年计算机二级考试java章节辅导:一维数组的初始化_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2017年计算机二级考试java章节辅导:一维数组的初始化5.1.2一维数组的初始化我们知道,只声明了数组,这时候其值为null,要想使用数组,还需要做初始化工作。数组初始化为声明的数组指定数组元素个数,为数组元素分配空间并赋值。数组初始化可以通过如下几种方式完成。1.直接指定初值的方式用直接指定初值的方式初始化数组是指在声明数组的同时将数组元素的初值依次写入赋值号(=)后的一对大括号({})内,同时,根据值的个数确定数组元素的个数,为它分配足够的存储空间并将这些值写入相应存储的存储单元。如:Chara[]={‘N’,’C’,’E’,’P’,’U’};从该语句可以得到信息:该数组名为a,数组元素的数据类型为char,每个元素占用2个字节的存储空间,大括号中共有5个值,因此数组元素的个数为5,系统会为该数组分配2*5=10个字节的连续存储空间。经过数组初始化后,a数组的5个元素值分配情况为:a[0]=’N’,a[1]=’C’,a[2]=’E’,a[3]=’P’,a[4]=’U’。在java中,数组的下标是从0开始的,因此对于含有n个元素的数组a来说,其最小下标为0,下标为n-1,而不是n。2.用new关键字初始化数组用关键字new初始化数组时,除了为数组指定数组元素个数、分配存储空间外,还会为数组元素按照数据类型的不同赋初值。具体如下:若为数值型,数组元素的默认值为0,;若为布尔型,数组元素的默认值为false;若为引用型,数组元素的默认值为空(null)。(1)先声明数组,再初始化数组。这里实际上是两条语句,具体格式如下:数据类型[]数组名;或数据类型数组名[];数组名=new数据类型[数组长度];第一条语句是数组声明语句,第二条语句则是初始化语句。需要注意的是这两条语句中数组名、数据类型必须一致,否者会产生错误或意想不到的结果。数组的长度可以是直接的int类型常数,也可以是已经赋值的int类型变量或int类型表达式。例如:Intn=10;Int[]a;a=newint[n];这样,在创建数组时提供了一定的灵活性,可以在程序中根据变量n的大小动态创建数组,需要注意的是,虽然n是变量,但根据n的值创建的数组一旦创建,数组的长度就固定下来了,不在允许修改。上面的语句中a数组中含有10个元素,初始化工作会使数组中的10个元素根据不同数据类型被赋以初值,因为这里是int,所以,10个元素的初值为0。(2)在声明数组的同时用new关键字初始化数组。实际上,这种方式是将第一种方式的两条语句合并为一条语句。格式如下:数据类型[]数组名=new数据类型[数组长度];或数据类型数组名[]=new数据类型[数组长度]例如:Intn=10;Int[]a=newint[n];(3)用一个已经初始化的数组对数组初始化除了上述两种形式的初始化外,还可以直接使用一个已经初始化的数组对新声明的数组进行初始化。格式如下:数据类型[]数组名=已初始化数组例如:Int[]a=newint[10];Int[]b=a;这种初始化会使得数组a与b具有相同的存储地址,即,a数组与b数组指向了同一个物理地址,任何对数组a的改变都会使数组b做相应的修改,同样,任何对数组b的修改也会使a数组的内容发生变化。要想验证上述观点可以使用java的输出语句System.out.println(数组名)的方式来查看:System.out.println(a);System.out.println(b);的输出结果是否相同,这里输出的是地址,如果相同表明数组a和b的地址相同,即它们实际上是一个数组的两种表现形式。3.混合方式有时候,数组的初始化可以综

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论