Java数组和随机数.ppt_第1页
Java数组和随机数.ppt_第2页
Java数组和随机数.ppt_第3页
Java数组和随机数.ppt_第4页
Java数组和随机数.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

数组,2.3数组,在Java语言中,数组是一种最简单的复合数据类型(引用数据类型)。数组是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和下标来唯一地确定数组中的元素。数组有一维数组和多维数组。我们将在后面的课程中介绍。,2.3数组 一维数组:定义,一维数组的定义方式为: type arrayName; 其中类型(type)可以为Java中任意的数据类型,包 括简单类型和组合类型,数组名arrayName为一个 合法的标识符, 指明该变量是一个数组类型变量。 例如: int intArray; 声明了一个整型数组,数组中的每个元素为整型数据。,我们还可以定义一个复合类型的数组,例如: Date dateArray; 声明了一个容纳复合数据类型Date的数组。 与C、C+不同,Java在数组的定义中并不为数组元素分配内存,因此 中不用指出数组中元素的个数,即数组长度,而且对于如上定义的一个数组是不能访问它的任何元素的。必须经过初始化后,才能应用数组的元素。,2.3数组 一维数组:定义,除了这种定义数组的方式之外,java语言还提供了其他的定义形式,如下所示: Type arrayName; 对于以上举出的例子,我们也可以这样定义: int intArray; Date dateArray;,2.3数组 一维数组:定义,一维数组定义之后,必须经过初始化才可以引用。数组的初始化分为静态初始化和动态初始化两种: 静态初始化:在定义数组的同时对数组元素进行初始化,例如: int intArray=1,2,3,4;/定义了一个含有4个 / 元素的int型数组。,2.3数组 一维数组:初始化,动态初始化:使用运算符new为数组分配空间,对于简 单类型的数组,其格式如下: type arrayName =new typearraySize; type arrayName=new typearraySize; 对于复合类型的数组,需要经过两步空间分配。 首先: type arrayName =new typearraySize; 然后:arrayName0=new type(paramList); arrayNamearraySize-1=new type(paramList);,2.3数组 一维数组:初始化,例如: String stringArrar; /定义一个String类型的数组 stringArray = new String3; /给数组stringArray分配3个应用 /空间,初始化每个引用值为null stringArray0=new String(“how”); stringArray1=new String(“are”); stringArray2=new String(“you”);,初始化各数组元素,2.3数组 一维数组:初始化,当定义了一个数组,并用运算符new为它分配了内存空间后,就可以引用数组中的每一个元素了。元素的引用方式为: arrayNameindex index为数组下标,可以是整型常数或表达式,如:arrayName1, arrayNamei, arrayName6*i等。下标是0序的,即从0开始,一直到数组长度减1。,2.3数组 一维数组:引用,另外,与C、C+中不同,Java对数组元素要进行越界检查以保证安全性。同时,对于每个数组都有一个属性length指明它的长度,例如: intArray.length指明数组intArray的长度。,2.3数组 一维数组:边界检查,public class ArrayTest public static void main( String args ) int i; int a = new int5; for( i=0; i=0; i- ) System.out.println(“a“+i+“ = “+ai); ,该程序对数组中的每个元素赋值,然后按逆序输出。,2.3数组 一维数组:示例,运行结果为: C:java ArrayTest a4 = 4 a3 = 3 a2 = 2 a1 = 1 a0 = 0,2.3数组 一维数组:示例,在任何语言中,多维数组都被看作数组的数组。比如二维数组是一个特殊的一维数组,其每一个元素又是一个一维数组。我们主要以二维数组为例来说明,高维数组与此类似。,2.3数组 多维数组,String str = new String34;,Str0,Str1,Str2,二维数组的定义方式 type arrayName ; 例如: int intArray ; 也可以采用另一种定义方式: type arrayName; 与一维数组一样,这时对数组元素也没有分配内存空间,同样要使用运算符new来分配内存,然后才可以访问每个元素。,2.3数组 二维数组:定义,二维数组的初始化也分为静态和动态两种。 静态初始化:在定义数组的同时为数组分配空间。 int intArray =1,2,2,3,3,4; 不必指出数组每一维的大小,系统会根据初始化时给出的初始值的个数自动算出数组每一维的大小。,2.3数组 二维数组:初始化,动态初始化:对高维数组来说,分配内存空间有下面两种方法: 1.直接为每一维分配空间,如: type arrayName =new typearraylength1arraylength2 例如: int a =new int23;,2.3数组 二维数组:初始化,2.从最高维开始(而且必须从最高维开始),分别为每一维分配空间,如: String s =new String2 ; s0=new String2; s1=new String3; s00=new String(“Good”); s01=new String(“Luck”); s10=new String(“to”); s11=new String(“you”); s12=new String(“!”);,2.3数组 二维数组:初始化,课堂练习,找出一个int数组中的平均值 找出一个int数组中和平均值最接近的那个值 1+1*2+1*2*3 +1*2*3*4 +10!,随机函数,随机数 Math.random() new Random(

温馨提示

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

评论

0/150

提交评论