轻工学院Java语言程序设计第三讲.ppt_第1页
轻工学院Java语言程序设计第三讲.ppt_第2页
轻工学院Java语言程序设计第三讲.ppt_第3页
轻工学院Java语言程序设计第三讲.ppt_第4页
轻工学院Java语言程序设计第三讲.ppt_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

1、Java编程第三节课的数组以及流控制、数组、数组定义数组是经过排序的数据集合,并且数组中的每个元素都具有相同的数据类型。一维阵列定义为: type arrayName。其中类型可以是Java中的任何数据类型(包括简单类型、组合类型),数组名称arrayName是指示变量是数组类型变量(例如: int intArray)的有效标识符。声明整数数组,数组中的每个元素都是整数数据,数组中有一维数组和多维数组。与C,C不同,Java不为数组定义中的数组元素分配内存,因此不需要表示数组中的元素数。也就是说,数组的长度在Java中,数组是对象。可以有阵列定义,任何类型的阵列。数组元素可以是基本类型或类类型

2、,当然也可以是数组。是char s;点点;s中的每个元素都是char类型,Points中的每个元素都是类point类型。等价阵列说明,差s;点点;两行牙齿的说明和前面的说明完全一样。创建数组。与所有对象一样,程序使用new关键字创建数组。方括号中的数字表示数组元素的数量。例如s=new char20Points=new Point100points 0=new Point();points 1=new Point();Java没有静态数组定义,数组中的所有内存都是通过new动态分配的。创建阵列后不能更改其大小,但是可以使用相同的参照变量指向全新的阵列。Int elements=new int6

3、Elements=new int10,Point类定义如下:class Point int x,y;Point (int x1,int y1)x=x1;Y=y1Point() this(0,0);插图说明语句:点;执行完成后,会将参考空间指定给points变数。说明语句3360 points=new point100执行完成后,将数组对象分配给内存,并将数组引用分配给变量points说明语句: points1=new Point()。运行完成后,将更改为阵列的状态图表(B)牙齿图(C)。可以将阵列说明与阵列生成相结合。char s=new char 20Point points=new Poi

4、nt 100数组变量的类型说明(例如,Object pointsPoints=新点100;示例:点点;Points=新对象100;精确,错误,数组边界,在Java中,数组下标从0开始。数组中的元素数length是数组中唯一的数据成员变量。使用New创建数组时,系统会自动将值分配给length。阵列创建后,大小是固定的。程序运行时,使用length执行阵列边界检查。如果发生跨国访问,则会引发异常。是,int list=new int 10for(int I=0);I list.lengthI) /在适当处理的代码循环的结束条件下,使用list.length而不是常量10。优点:使阵列下标不超过边

5、界,从而使程序更结实,更易于修改。初始化数组,向数组名称添加下标以表示数组元素。阵列的下标范围从0到length-1。创建数组时,将初始化每个元素。如果没有为数组元素分配值,则默认值为数字类型0、逻辑类型false、字符类型0、对象类型null。Java允许您使用初始值创建数组。是,int a=11,12,13,14,15,16;双b=1.1,1.2,1.3,1.4,1.5,1.6,1.7;String names=Georgianna杜松子酒;杜松子酒。西蒙;汤姆;阵列运算范例,public class array test public static void main(string ar

6、gs)int I;Int a=new int5for(I=0);i5;I)ai=I;for(I=a . length-1;I=0;I-)system . out . print ln(a I=ai);阵列运算的范例为: C : Java Array Test A4=4 A3=3 A2=2 A1=1 A0=0牙齿程式将值指定给阵列中的每个元素,并反向输出,如下所示:阵列操作示例,Fibonacci数列定义为3360 f1=F2=1,fn=fn-1 fn-2 (n=3)。求数列的前10个。public class fibon acci public static voidmain(string a

7、rgs)Int I:Int f=new Int 10;F0=f1=1;for(I=2;I10I)fi=fi-1 fi-2;for(I=1);I=10I)system . out . print ln(F I=fi-1);运行结果: c : Java fibon acci f1=1 F2=1 F3=2 F4=3 F5=5 F6=8 F7=13 F8=21 F9=34 F10=55,多维数组一般为N维数组描述多维数组时,请使用类型和多个方括号。示例:int a;int b;二维数组,创建二维数组的常用格式是type arrayN=new type arrleng1。ArrayN 0=新类型arrl

8、eng2ArrayN 1=新类型arrleng2.arrayn arr leng 1-1=new type arr leng 2;二维矩阵数组说明,二维矩阵数组的典型说明格式为typearray name=new typelength 1 length 2。其中arrayName是数组名,length1和length2分别是数组中每个维的大小,type是数组元素类型。与一维数组一样,数组元素也没有分配内存空间。要访问每个元素,必须使用new操作符分配内存。对于高维数组,可以通过以下方式分配内存空间:直接分配给每个维的空间示例int matrix=new int 45,创建具有四个数组的数组,每

9、个数组有5个整数:4行5列的整数矩阵。等于:int matrix=new int 4;for(int j=0);J matrix.lengthj)matrix j=new int 5;首先,指定一维行数为4,每行列数为5。从最高维度开始,为每个维度分配空间。首先,将行数指定为指定的列数int a=new int 2。A0=new int3A1=new int3,初始化二维数组,初始化多维数组类似于一维数组。例如,二维数组静态初始化。int a=2,3、1,5、3,4;2 3 1 5 3 4可以使用两个下标访问阵列的所有元素。正确的说明示例,int a1=new int 23int a2=new

10、 int 2;Int a3=new int 46,错误的说明示例,int errarr123int errar r 2=new int 4;Int errarr3 4=new int 34,不允许静态说明数组。数组的维说明顺序必须是从高到低。数组维指定只能出现在new运算符之后。二维数组中每个元素的引用为: arrayNameindex1index2。其中index1,index2是行下标和列下标。每个维度的下标从0开始。最大值是每个维的长度减去1-2维数组的length属性。阵列名称。length表示数组,流控制,语句是Java的最小执行单元,语句之间用分号(;)作为分隔符。表达式语句,下面

11、是几个茄子表达式语句:Customer 1=new Customer();Point 2=new Point();X=12x;表达式语句,方法调用通常返回值,通常用于表达式。某些方法调用可以直接用作语句。例如:System.out.println(Hello World!);块,块是包含大括号“”和“”的一组语句。例如:Point Point 1=new Point();Int x=point1.x第一个块是没有门的空块。第二个块包含两个门。方法主体是块。块还用于流控制语句,如if语句、switch语句和循环语句。与、C、C类似,Java程序通过流控制运行节目流,并由特定语句组成。语句可以是单

12、个语句。例如,c=a b;),也可以是复合门。1.分支门:if-else,break,switch。2.让我们分别查看Java中的流控制语句,包括循环语句: while、do-while、for和continuuus,分支语句有两种茄子类型:if语句和switch语句。分支语句,if语句的基本语法是逻辑表达式(if)语句1。Else语句2;If语句的else子句是可选的。If关键字后的逻辑表达式必须获得逻辑值,不能替换为数值。,1 .if语句、if语句的含义、逻辑表达式结果为true时执行语句1,然后继续执行if后面的语句。逻辑表达式为false时,如果存在else子句,则运行语句2,否则跳过

13、if语句,继续执行下一语句。门1和门2可以是单个门,也可以是门块。每个单个语句后面必须有分号。门1、门2可以是复合门。此时必须使用大括号。建议在单个语句中使用大括号。这样可以提高程序的可读性,并有助于扩展可以填充新门的节目。大括号外没有加分。是,int countcount=get count();/程序中定义的方法if(count 0)system . out . print ln( error : count value is negative!);else system . out . print ln( there will be count people for lunch toda

14、y );if-else语句的特殊格式为: if(expression 1)statement 1 Else if(expression 2)statement 2 Else if(expressionm)statementif语句示例:比较两个数字的大小,然后从小到大输出。public class compare two public static void main(string args)doubled 1=23.4;双d2=35.1if(D2=D1)system . out . print ln(D2=D1);else system . out . print ln(D1=D2);执行结

15、果: c : Java compare two 35.1=23.4,2.switch语句,switch语句是多个分支语句,格式为switch(表达式)case c1:语句语法,brek;案例case c2:门组2;布列克;Case ck:门组k;布列克;Default:门组;布列克;2 .switch语句,表达式的计算结果必须是int或字符。也就是说,int类型分配是兼容的。使用Byte、short或char类型时必须升级。2 .switch语句,switch语句不接受浮点表达式或long表达式。C1、C2、CK是int或文字常数。Default子句是可选的,最后的break语句完全不可写。s

16、witch语句的含义,计算表达式的值,使用牙齿值依次比较C1、C2、CK。如果牙齿值等于其中之一,则执行下一组语句,直到break语句移动到switch后面的语句为止。如果没有匹配的值,则执行default后面的语句。switch语句中每个ci后面的语句可以是单个语句或一组语句。无论运行哪个分支,节目流都将按顺序执行,直到出现break语句。switch语句的含义,2 .switch语句示例,示例: /colorNum是整数变量switch(color num)case 03360 set background(color . red)brek;case 13360 set background(color . green);布列克;default : set background(color . black);布列克;2 .switch语句示例,class witch test public static void main(string args)charch=args 0 . charat(0);swit

温馨提示

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

评论

0/150

提交评论