java程序设计案例教程-模块.ppt

上传人:cn****1 文档编号:568253920 上传时间:2024-07-23 格式:PPT 页数:79 大小:1.18MB
返回 下载 相关 举报
java程序设计案例教程-模块.ppt_第1页
第1页 / 共79页
java程序设计案例教程-模块.ppt_第2页
第2页 / 共79页
java程序设计案例教程-模块.ppt_第3页
第3页 / 共79页
java程序设计案例教程-模块.ppt_第4页
第4页 / 共79页
java程序设计案例教程-模块.ppt_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《java程序设计案例教程-模块.ppt》由会员分享,可在线阅读,更多相关《java程序设计案例教程-模块.ppt(79页珍藏版)》请在金锄头文库上搜索。

1、模块三模块三 JavaJava程序设计基础程序设计基础 目标目标 本模块通过案例中定义的数据、实现的代码段为引线,着重本模块通过案例中定义的数据、实现的代码段为引线,着重介绍介绍JavaJava语言中的基本数据类型、运算符与表达式、程序控制结语言中的基本数据类型、运算符与表达式、程序控制结构以及数组的概念等构以及数组的概念等JavaJava语言中基础的内容。对于语言中基础的内容。对于JavaJava初学者,初学者,首先要理解这些基本概念,掌握首先要理解这些基本概念,掌握JavaJava的基本语法,才能为今后的的基本语法,才能为今后的学习奠定坚实的基础学习奠定坚实的基础。 学习本模块涉及哪些重要

2、内容?学习本模块涉及哪些重要内容?本模块导读本模块导读学学习习程程序序设设计计语语言言的的第第一一步步是是熟熟悉悉该该语语言言支支持持的的数数据据结结构构、程程序序控控制制语语句句语语法法等等基基本本问问题题,学学习习JavaJava也也不不例例外外。JavaJava作作为为一一门门新新兴兴的的高高级级语语言言,具具有有数数据据结结构构简简单单、丰丰富富,以以及及程程序序控控制制语语句句通通用用、高高效效等等优优点点。对对于于初初学学者者来来说说,通通过过一一个个完完整整案案例例中中简简单单的的变变量量、常常量量、成成员员变变量量、成成员员方方法法定定义义,开开始始接接触触、熟熟悉悉JavaJ

3、ava语语言言的的数数据据类类型型、程程序序控控制制语语句句应应用用方方法的最佳途径。法的最佳途径。本本模模块块通通过过案案例例中中定定义义的的数数据据、实实现现的的代代码码段段为为引引线线,着着重重介介绍绍JavaJava语语言言中中的的基基本本数数据据类类型型、运运算算符符与与表表达达式式、程程序序控控制制结结构构以以及及数数组组的的概概念念等等JavaJava语语言言中中基基础础的的内内容容。对对于于JavaJava初初学学者者,首首先先要要理理解解这这些些基基本本概概念念,掌握掌握JavaJava的基本语法,才能为今后的学习奠定坚实的基础。的基本语法,才能为今后的学习奠定坚实的基础。学

4、习本模块涉及哪些重要内容?学习本模块涉及哪些重要内容?本模块要点本模块要点掌握掌握JavaJava语言中基本数据类型和变量、常量的概念语言中基本数据类型和变量、常量的概念 掌握掌握JavaJava语言中运算符和表达式的使用语言中运算符和表达式的使用掌握掌握JavaJava语言中的几种程序控制结构语言中的几种程序控制结构掌握掌握JavaJava语言中数组的使用语言中数组的使用任务一任务一数据类型和变量常量数据类型和变量常量 子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型【案例案例】在单机版考试系统的在单机版考试系统的ReadTestquestion.javaRead

5、Testquestion.java文件中,有如下代文件中,有如下代码码: : import Java.io.*;import Java.io.*;import Java.util.*;import Java.util.*;public class ReadTestquestionpublic class ReadTestquestionint score=0; int score=0; 【1 1】long time=0; long time=0; 【2 2】boolean testover=false; boolean testover=false; 【3 3】 任务一任务一数据类型和变量常量

6、数据类型和变量常量 子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型代码详解代码详解定义变量定义变量score,score,数据类型为整型,赋初值为数据类型为整型,赋初值为0 0定义变量定义变量time,time,数据类型为长整型,赋初值为数据类型为长整型,赋初值为0 0定义变量定义变量testover testover ,数据类型为逻辑型,赋初值为,数据类型为逻辑型,赋初值为falsefalse任务一任务一认识认识JavaJava语言语言子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型知识点详解知识点详解JavaJava语言中数据类型的

7、分类语言中数据类型的分类基本数据类型基本数据类型整数类型整数类型 : :整数类型简称整型。不含小数点的数字为整数类型整数类型简称整型。不含小数点的数字为整数类型数据,例如:数据,例如:-14-14、9898、213213、0 0等。整数类型又根据数据所占内等。整数类型又根据数据所占内存空间的大小和数字的范围分为字节型(存空间的大小和数字的范围分为字节型(bytebyte)、短整型)、短整型(shortshort)、整型()、整型(intint)和长整型()和长整型(longlong)四种)四种 . .字节型:字节型占一个字节的内存空间,取值范围为字节型:字节型占一个字节的内存空间,取值范围为:

8、-128:-128127, 127, 即即-27 -27 27-127-1。它使用关键字。它使用关键字 byte byte 来定义字节整型变量。例如:来定义字节整型变量。例如:byte x=33byte x=33 任务一任务一认识认识JavaJava语言语言子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型知识点详解知识点详解短整型:短整型占两个字节的内存空间,取值范围为短整型:短整型占两个字节的内存空间,取值范围为-32768-3276832767, 32767, 即即-215-215215-1215-1。它使用关键字。它使用关键字 short short 来定义短

9、整型变量,来定义短整型变量,例如:例如:short x=456 .short x=456 .整型:整型占四个字节的内存空间,取值范围为整型:整型占四个字节的内存空间,取值范围为-2147483648-21474836482147483647,2147483647,即即-231-231231-1231-1。它用关键字。它用关键字 int int 来定义整型变量,来定义整型变量,例如:例如:int x=45int x=45。长整型:长整型占八个字节的内存空间,取值范围为长整型:长整型占八个字节的内存空间,取值范围为 :- -9223372036854775808L92233720368547758

10、08L9223372036854775807L,9223372036854775807L,即即-263-263263-1263-1。它使用关键字它使用关键字 long long 来定义长型整型变量,在声明长整型时,在整来定义长型整型变量,在声明长整型时,在整数后要加数后要加“L L”或或“l l”以示区别。例如:以示区别。例如:long x=43Llong x=43L。任务一任务一认识认识JavaJava语言语言子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型知识点详解知识点详解浮点类型浮点类型 :浮点类型又称为实型,浮点类型是指那些包含有小数浮点类型又称为实型,浮

11、点类型是指那些包含有小数部分的数字,例如:部分的数字,例如:-38.2、32.00、87.143等。浮点类型根据等。浮点类型根据数据所占内存空间的大小和数字的范围分为单精度浮点型数据所占内存空间的大小和数字的范围分为单精度浮点型(float)和双精度型浮点型()和双精度型浮点型(double)两种。)两种。单精度浮点型:单精度浮点型: 单精度浮点型占四个字节的内存空间,取值范围单精度浮点型占四个字节的内存空间,取值范围在负数的时候是从在负数的时候是从-3.402823E38-3.402823E38到到-1.401298E-45-1.401298E-45,而在正数的时,而在正数的时候是从候是从

12、1.401298E-45 1.401298E-45 到到 3.402823E383.402823E38。它使用关键字。它使用关键字 float float 来来定义单精度浮点型变量,例如:定义单精度浮点型变量,例如:float x=123.5ffloat x=123.5f。单精度浮点型的。单精度浮点型的数据其最后一个字符之后必须加数据其最后一个字符之后必须加“F F”或或“f f”,如果数据的最后一,如果数据的最后一个字符后没有个字符后没有“F F”或或“f f”,则默认为,则默认为doubledouble类型的数值。例如:类型的数值。例如:1233.539f, 1289.97F, 123.0

13、f(f 1233.539f, 1289.97F, 123.0f(f 不可省略不可省略) )。 使用关键字使用关键字 float float 来定义单精度浮点型变量时,如果变量赋值时没加上后缀来定义单精度浮点型变量时,如果变量赋值时没加上后缀f f,就会,就会出错,例如:出错,例如:float x=123.5 float x=123.5 (出错)。(出错)。任务一任务一认识认识JavaJava语言语言子任务子任务1 Java1 Java语言中的基本数据类型语言中的基本数据类型知识点详解知识点详解双精度型浮点型:双精度浮点型占八个字节的内存空间,取值范围双精度型浮点型:双精度浮点型占八个字节的内存

14、空间,取值范围对于负数从对于负数从-1.79769313486232E308 -1.79769313486232E308 到到 -4.94065645841247E-324-4.94065645841247E-324,对于正数从,对于正数从4.94065645841247E-3244.94065645841247E-324到到1.79769313486232E3081.79769313486232E308。它使用关键字它使用关键字 double double 来定义变量,例如:来定义变量,例如:double x=12389.5439ddouble x=12389.5439d(d d可以省略)。

15、可以省略)。逻辑类型:逻辑类型占一个字节的内存空间。逻辑型数据只有两个逻辑类型:逻辑类型占一个字节的内存空间。逻辑型数据只有两个值值truetrue和和falsefalse(必须小写),(必须小写),JavaJava中的逻辑型数据和数字之间不中的逻辑型数据和数字之间不能相互转换,即能相互转换,即falsefalse和和truetrue不对应于任何不对应于任何0 0或非或非0 0的整数值。逻辑的整数值。逻辑型变量的定义如下:型变量的定义如下:boolean x=trueboolean x=true。字符类型:字符类型用两个字节表示一个字符。字符类型:字符类型用两个字节表示一个字符。JavaJav

16、a中的字符型数中的字符型数据是据是1616位无符号型数据,它表示位无符号型数据,它表示UnicodeUnicode集,而不仅仅是集,而不仅仅是ASCIIASCII集。集。它使用关键字它使用关键字 char char 来定义字符型变量,在定义字符类型字符时,来定义字符型变量,在定义字符类型字符时,要用一对单引号将字符括起来。例如:要用一对单引号将字符括起来。例如:char c=char c=x x。任务一任务一认识认识JavaJava语言语言子任务子任务2 2 常量和变量常量和变量变量变量变量的声明:变量的声明:Java语言的变量声明格式为:数据类型语言的变量声明格式为:数据类型 变量名列变量名

17、列表;表; 变量名必须是合法的变量名必须是合法的JavaJava标识符,并且具有一定的含义,以增加程标识符,并且具有一定的含义,以增加程序的可读性。序的可读性。变量类型可以是前面所讲的变量类型可以是前面所讲的JavaJava任意一种基本数据类型。任意一种基本数据类型。变量的声明中多个变量间用逗号隔开。例如:变量的声明中多个变量间用逗号隔开。例如:float a, b, c; float a, b, c; 任务一任务一认识认识JavaJava语言语言子任务子任务2 2 常量和变量常量和变量为变量赋初值:声明了一个变量后,系统会自动给变量赋一个为变量赋初值:声明了一个变量后,系统会自动给变量赋一个

18、默认的初始值,见表默认的初始值,见表3-1。但一般要重新赋值,具体做法是使用。但一般要重新赋值,具体做法是使用赋值语句,语法格式为:变量名赋值语句,语法格式为:变量名 = 数据数据;声明变量和给变量赋初值合并一起使用。其格式为:数据类型声明变量和给变量赋初值合并一起使用。其格式为:数据类型 变量名变量名=数据;数据;一次声明多个同样类型的变量并且赋初值。其格式为:数据类一次声明多个同样类型的变量并且赋初值。其格式为:数据类型型 变量名变量名1=数据数据,变量名变量名2=数据数据, ,变量名变量名n=数据数据; 任务一任务一认识认识JavaJava语言语言子任务子任务2 2 常量和变量常量和变量

19、常量常量直接常量:就是常数,不使用任何标识符直接引用其值的常量。直接常量:就是常数,不使用任何标识符直接引用其值的常量。例如:例如:123,-456,0,1.23f,true, a等。等。 符号常量符号常量 :就是常值变量,用关键字:就是常值变量,用关键字final把一个标识符定义为把一个标识符定义为常量,例如:常量,例如:final int MAX_SIZE=345 。算术运算符与算术表达式算术运算符与算术表达式算术运算符是针对数值类型操作数进行运算的符号。算术运算符是针对数值类型操作数进行运算的符号。根据参与运算的操作数的数目,可将算术运算符分为双目运算符和单根据参与运算的操作数的数目,可

20、将算术运算符分为双目运算符和单目运算符两种。目运算符两种。 任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解 运算符类别运算符类别算术运算符算术运算符说明说明功能功能表达式举例表达式举例双目运算符双目运算符+ + 加法运算符加法运算符加法加法5+3=85+3=8- -减法运算符减法运算符减法减法12-3=912-3=9* *乘法运算符乘法运算符乘法乘法2*3=62*3=6/ /除法运算符除法运算符除法除法6/2=36/2=3% %求余运算符求余运算符求余求余8%3=28%3=2单目运算符单目运算符+ +一元加运算符一元加运算符取正值取正值+5+5- -一元减运算符一元减运算符取负

21、值取负值-5-5+自增运算符自增运算符加加1 1+i+i-自减运算符自减运算符减减1 1-i-i表表3-2 3-2 算算术运算符运算符任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解关系运算符与关系表达式关系运算符与关系表达式关系运算符用于比较两个操作数之间的关系。关系表达式返回一个逻关系运算符用于比较两个操作数之间的关系。关系表达式返回一个逻辑结果:辑结果:true或或false。 在在Java语言中语言中“true”或或“false”不能用不能用“0”或或“1”来表示,而来表示,而且这两个逻辑值必须用小写且这两个逻辑值必须用小写“true”与与“false” 。逻辑运算符与逻

22、辑表达式逻辑运算符与逻辑表达式Java语言中的逻辑运算符只对逻辑型数据进行运算,其表达式的值只语言中的逻辑运算符只对逻辑型数据进行运算,其表达式的值只有有true或或false两种取值。两种取值。Java中提供了中提供了6种逻辑运算符,如表种逻辑运算符,如表3-4所示。所示。逻辑运算符的运算规则如表逻辑运算符的运算规则如表3-5所示。所示。任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解关系运算符关系运算符表达式表达式功能功能举例举例 ( (小于小于) )op1op2op1op2比较比较op1op1是否小于是否小于op2op2表达式表达式3 53 ( (大于大于) )op1op2

23、op1op2比较比较op1op1是否大于是否大于op2op2表达式表达式3 53 5的值为的值为falsefalse=(=(小于等于小于等于) )op1=op2op1=op2比较比较op1op1是否小于等于是否小于等于op2op2表达式表达式5 =85 =(=(大于等于大于等于) )op1=op2op1=op2比较比较op1op1是否大于等于是否大于等于op2op2表达式表达式4 = 54 = 5的值为的值为falsefalse=(等于)(等于)op1= =op2op1= =op2比较比较op1op1是否等于是否等于op2op2表达式表达式4 = 54 = 5的值为的值为falsefalse!

24、=!=(不等于)(不等于)op1!=op2op1!=op2比较比较op1op1是否不等于是否不等于op2op2表达式表达式4 != 54 != 5的值为的值为truetrue表表3-3 3-3 关系运算符关系运算符任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解表表3-4 3-4 逻辑运算符逻辑运算符 逻辑运算符逻辑运算符表达式表达式说明说明!(逻辑非)!(逻辑非)!a!aa a为真时得假,为真时得假,a a为假时得真为假时得真& &(逻辑与)(逻辑与)a & ba & ba a和和b b都为真时才得真,其余为假都为真时才得真,其余为假&(简洁逻辑与)(简洁逻辑与)a & ba

25、& ba a和和b b都为真时才得真,如果都为真时才得真,如果a a为假,则整为假,则整个表达式为假,所以运算时个表达式为假,所以运算时b b不被计算不被计算| |(逻辑或)(逻辑或)a|ba|ba a和和b b都为假时才得假,其余为真都为假时才得假,其余为真|(简洁逻辑或)(简洁逻辑或)a|ba|ba a和和b b都为假时才得假,如果都为假时才得假,如果a a为真,则整为真,则整个表达式为真,所以运算时个表达式为真,所以运算时b b不被计算不被计算 (逻辑异或)(逻辑异或)a ba ba a和和b b的逻辑值不相同时结果为真,相同的逻辑值不相同时结果为真,相同时为假时为假任务二任务二运算符和

26、表达式运算符和表达式 知识点详解知识点详解表表3-5 3-5 逻辑运算符运算规则逻辑运算符运算规则 a a的值的值b b的值的值!a!aa & ba & ba & ba & ba|ba|ba|ba|ba ba bTRUETRUEFALSEFALSEFALSEFALSEFALSEFALSEFALSEFALSETRUETRUETRUETRUETRUETRUETRUETRUETRUETRUEFALSEFALSETRUETRUETRUETRUETRUETRUETRUETRUEFALSEFALSEFALSEFALSEFALSEFALSETRUETRUEFALSEFALSEFALSEFALSEFALSEF

27、ALSEFALSEFALSEFALSEFALSEFALSEFALSETRUETRUETRUETRUEFALSEFALSEFALSEFALSETRUETRUETRUETRUETRUETRUE任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解逻辑非运算符逻辑非运算符“!”的优先级高于其它逻辑运算符。相同优先的优先级高于其它逻辑运算符。相同优先级的逻辑运算符的执行顺序为自左级的逻辑运算符的执行顺序为自左右。右。位运算符与位表达式位运算符与位表达式 位运算的操作数是二进制比特位。位运算的操作数是二进制比特位。JavaJava语言中的位运算符如表语言中的位运算符如表3-6 3-6 所示。所示

28、。任务二任务二运算符和表达式运算符和表达式 表表3-6 3-6 位运算符位运算符 位运算符位运算符名名 称称表达式表达式说说 明明 按位取反按位取反opop操作数各位分别进行非运算操作数各位分别进行非运算& &按位与按位与op1&op2op1&op2两个操作数的对应位分别进行与运算两个操作数的对应位分别进行与运算| |按位或按位或op1|op2op1|op2两个操作数的对应位分别进行或运算两个操作数的对应位分别进行或运算 按位异或按位异或op1op2op1op2两个操作数的对应位分别进行异或运算两个操作数的对应位分别进行异或运算右移运算符右移运算符op1op2op1op2把第一个操作数把第一个

29、操作数op1op1右移第二个操作数右移第二个操作数op2op2指定指定的位,溢出的低位丢弃,高位用原来高位的值的位,溢出的低位丢弃,高位用原来高位的值补充。补充。左移运算符左移运算符op1op2op1无符号右移运无符号右移运算符算符op1op2op1op2把第一个操作数把第一个操作数op1op1右移第二个操作数右移第二个操作数op2op2指定指定的位,溢出的低位丢弃,高位补的位,溢出的低位丢弃,高位补0 0任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解“ ”按位取反运算符:用来对一个二进制数按位取反,即将按位取反运算符:用来对一个二进制数按位取反,即将0 0变变为为1 1,将,

30、将1 1变为变为0 0。“& &”按位与运算符:参加运算的两个操作数,按二进制位进行按位与运算符:参加运算的两个操作数,按二进制位进行“与与”运算。如果两个相应的位都为运算。如果两个相应的位都为1 1,则该位的结果为,则该位的结果为1 1,其余为,其余为0 0。即,即,0&0=00&0=0,0&1=00&1=0,1&0=01&0=0,1&1=11&1=1。“| |”按位或运算符:参加运算的两个操作数,按二进制位进行按位或运算符:参加运算的两个操作数,按二进制位进行“或或”运算。如果两个相应的位都为运算。如果两个相应的位都为0 0,则该位的结果为,则该位的结果为0 0,其余为,其余为1 1。即,

31、即,0|0=00|0=0,0|1=10|1=1,1|0=11|0=1,1|1=11|1=1。“ ”按位异或运算符:参加运算的两个操作数,按二进制位进行按位异或运算符:参加运算的两个操作数,按二进制位进行“异或异或”运算。如果两个相应的位都为运算。如果两个相应的位都为0 0或者或者1 1,则该位的结果值,则该位的结果值为为0 0,否则为,否则为1 1。即,。即,00=000=0,01=101=1,10=110=1,11=011=0。任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解“ ”按位异或运算符:参加运算的两个操作数,按二进制位进行按位异或运算符:参加运算的两个操作数,按二进制

32、位进行“异或异或”运算。如果两个相应的位都为运算。如果两个相应的位都为0 0或者或者1 1,则该位的结果值,则该位的结果值为为0 0,否则为,否则为1 1。即,。即,00=000=0,01=101=1,10=110=1,11=011=0。“”右移运算符:用来将一个操作数的二进制位右移若干位。右移运算符:用来将一个操作数的二进制位右移若干位。移到右端的低位被舍弃,最高位则保持原值不变。每右移一位相移到右端的低位被舍弃,最高位则保持原值不变。每右移一位相当于原数值除当于原数值除2 2。“”无符号右移运算符:用来将一个操作数的各个二进制位无无符号右移运算符:用来将一个操作数的各个二进制位无符号右移若

33、干位。移出的低位被舍弃,高位补符号右移若干位。移出的低位被舍弃,高位补0 0。例如:如果。例如:如果a=11101010a=11101010,则,则a 2a 2的值为的值为0011101000111010。任务二任务二运算符和表达式运算符和表达式 知识点详解知识点详解条件运算符条件运算符条件运算符是唯一的一个三目运算符,条件运算符由条件运算符是唯一的一个三目运算符,条件运算符由“? ?”和和“: :”连接的三个操作数构成,使用形式为:表达式连接的三个操作数构成,使用形式为:表达式1?1?表达式表达式2:2:表达式表达式3 3说明:先求解表达式说明:先求解表达式1 1,若为真,则取表达式,若为真

34、,则取表达式2 2的值作为最终结的值作为最终结果返回,若表达式果返回,若表达式1 1结果为假,取表达式结果为假,取表达式3 3的值为最终结果返回。的值为最终结果返回。例如:设例如:设a = 2a = 2,b = 8b = 8,c = 11c = 11,d = 34d = 34,求,求x=( a b ) ? x=( a b ) ? c : d c : d 的值。的值。首先计算首先计算a b(a =op1=op2op1=op2op1=op1op2op1=op1op2=op1=op2op1=op2op1=op1op2op1=op1=op1=op2op1=op2op1=op1op2op1=op1op2

35、任务三任务三程序控制结构程序控制结构子任务子任务1 1 选择结构选择结构【案例案例】在单机版考试系统的在单机版考试系统的Login.javaLogin.java文件中文件中如下代码:如下代码: if(rs.next() if(rs.next() 【1 1】 【2 2】 if(rs.getString(PWD).equals(PWD) if(rs.getString(PWD).equals(PWD) new JavaTest(); new JavaTest(); System.out.println(OK); System.out.println(OK); 任务三任务三程序控制结构程序控制结构子

36、任务子任务1 1 选择结构选择结构 elseelse JOptionPane.showMessageDialog( null , JOptionPane.showMessageDialog( null , 你输入的密码错误!你输入的密码错误!, 登录失败登录失败 , JOptionPane.ERROR_MESSAGE) ; , JOptionPane.ERROR_MESSAGE) ; 【3 3】 else else 【4 4】 【5 5】 JOptionPane.showMessageDialog( null , JOptionPane.showMessageDialog( null , 该用

37、户不存在!该用户不存在!, 登录失败登录失败 , JOptionPane.ERROR_MESSAGE) ; , JOptionPane.ERROR_MESSAGE) ; 【6 6】 任务三任务三程序控制结构程序控制结构子任务子任务1 1 选择结构选择结构代码详解代码详解ifif是关键字是关键字, rs.next(), rs.next()为判断条件。为判断条件。【2 2】【3 3】之间的代码是之间的代码是rs.next()rs.next()条件满足时要执行的语句体。条件满足时要执行的语句体。习惯上习惯上“ ”放在放在ifif或或elseelse之后,而之后,而“ ”另起一行且与另起一行且与ifi

38、f或或elseelse同列。同列。【2 2】【3 3】之间的代码是之间的代码是rs.next()rs.next()条件满足时要执行的语句体。条件满足时要执行的语句体。在本案例中语句体也是在本案例中语句体也是ifif语句,属于语句,属于ifif的嵌套。的嵌套。 elseelse是条件不满足的情况。习惯上放在同层前一个是条件不满足的情况。习惯上放在同层前一个“ ”之后。之后。【5 5】【6 6】之间的代码是之间的代码是rs.next()rs.next()条件不满足时要执行的语句条件不满足时要执行的语句体。体。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解ifif单分支结构的语法格式单分

39、支结构的语法格式 if ( if ( 条件表达式条件表达式 ) 语句体语句体; ; 条件表达式的值必须是逻辑型的,可以是逻辑型的常量、变量、条件表达式的值必须是逻辑型的,可以是逻辑型的常量、变量、关系表达式、或者逻辑表达式。关系表达式、或者逻辑表达式。语句体可以是一条语句或者多条语句,如果只有一条语句,语句体可以是一条语句或者多条语句,如果只有一条语句, 可可以省略不写,但为了增强程序的可读性最好不要省略。多条语句以省略不写,但为了增强程序的可读性最好不要省略。多条语句时必须用一对时必须用一对 括起来。括起来。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解当程序执行到当程序执行到i

40、f语句时,首先计算条件表达式的值,如果值为语句时,首先计算条件表达式的值,如果值为true,则执行,则执行if语句中的语句体,然后再执行语句中的语句体,然后再执行if语句下面的语句;语句下面的语句;如果值为如果值为false,则不执行,则不执行if语句中的语句体,直接执行语句中的语句体,直接执行if语句下语句下面的语句。面的语句。 ifif双分支结构的语法格式为:双分支结构的语法格式为: if ( if ( 条件表达式条件表达式 ) 语句体语句体A;A; else else 语句体语句体B;B; 任务三任务三程序控制结构程序控制结构知识点详解知识点详解条件表达式的值必须是逻辑型的,可以是逻辑型

41、的常量、变量、条件表达式的值必须是逻辑型的,可以是逻辑型的常量、变量、关系表达式、或者逻辑表达式。关系表达式、或者逻辑表达式。语句体可以是一条语句或者多条语句,如果只有一条语句,语句体可以是一条语句或者多条语句,如果只有一条语句, 可可以省略不写,但为了增强程序的可读性最好不要省略。多条语句以省略不写,但为了增强程序的可读性最好不要省略。多条语句时必须用一对时必须用一对 括起来。括起来。当程序执行到当程序执行到if-else语句时,首先计算条件表达式的值,如果值语句时,首先计算条件表达式的值,如果值是是true,则执行,则执行if语句中的语句体语句中的语句体A,然后跳过,然后跳过else语句执

42、行语句执行if结结构下面的语句;如果值是构下面的语句;如果值是false,则不执行,则不执行if语句中的语句体语句中的语句体A,而是执行而是执行else语句中的语句体语句中的语句体B,执行完后再继续执行,执行完后再继续执行if结构下面结构下面的语句。的语句。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解例例3-1:判断:判断2000年是不是闰年。判断闰年的条件是:如果该年年是不是闰年。判断闰年的条件是:如果该年能被能被4整除但不能被整除但不能被100整除,或者能被整除,或者能被400整除,该年就是闰年。整除,该年就是闰年。否则不是闰年。否则不是闰年。完整的程序完整的程序leapye

43、ar.javaleapyear.java如下:如下: public class leapyear public class leapyear /定义类定义类 public static void main(String args) public static void main(String args)/定义主方法定义主方法 int year=2000; int year=2000; if(year%4=0&year%100!=0)|(year%400=0) if(year%4=0&year%100!=0)|(year%400=0)/判断条件判断条件 System.out.println(ye

44、ar+ System.out.println(year+ 年是闰年年是闰年); ); /条件满足时执行的条件满足时执行的语句语句, ,输出结果输出结果 else else 任务三任务三程序控制结构程序控制结构知识点详解知识点详解 System.out.println(year+ System.out.println(year+ 不是闰年不是闰年););/条件不满条件不满 足时执行的语句足时执行的语句 程序编译运行的结果是在控制台输出如下信息:程序编译运行的结果是在控制台输出如下信息:20002000年时闰年年时闰年 任务三任务三程序控制结构程序控制结构知识点详解知识点详解ifif多分支结构的语

45、法格式多分支结构的语法格式 if ( if ( 条件表达式条件表达式1 )1 ) 语句体语句体1 1 else if ( else if ( 条件表达式条件表达式2 )2 ) 语句体语句体2 2 else if ( else if ( 条件表达式条件表达式n )n ) 语句体语句体 n n else else 语句体语句体 n+1n+1 任务三任务三程序控制结构程序控制结构知识点详解知识点详解条件表达式的值必须是逻辑型的,可以是逻辑型的常量、变量、条件表达式的值必须是逻辑型的,可以是逻辑型的常量、变量、关系表达式、或者逻辑表达式。关系表达式、或者逻辑表达式。语句体可以是一条语句或者多条语句,如

46、果只有一条语句,语句体可以是一条语句或者多条语句,如果只有一条语句, 可可以省略不写,但为了增强程序的可读性最好不要省略。多条语句以省略不写,但为了增强程序的可读性最好不要省略。多条语句时必须用一对时必须用一对 括起来。括起来。当程序执行到当程序执行到if-else if-else语句时,首先计算表达式语句时,首先计算表达式1的值,如的值,如果值是果值是true,则执行语句体,则执行语句体1,然后跳过,然后跳过else if语句和语句和else语句,语句,继续执行继续执行if结构下面的语句。如果表达式结构下面的语句。如果表达式1的值为的值为false,则判断,则判断表达式表达式2的值的值,如果

47、为如果为true,则执行语句体,则执行语句体2,然后跳过,然后跳过else语句,语句,继续执行继续执行if结构下面的语句。如果表达式结构下面的语句。如果表达式2的值为的值为false,则判断,则判断表达式表达式3的值,依次类推。如果所有条件都为的值,依次类推。如果所有条件都为false,则执行语句,则执行语句体体n+1。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解例例3-2:根据学生的成绩评出优、良好、中等、及格和不及个五:根据学生的成绩评出优、良好、中等、及格和不及个五个等级。判断标准如下:个等级。判断标准如下: score60,score60,不及格;不及格; 6060sco

48、re70,score70,及格及格 ; 7070score80,score80,中等;中等; 80 80score90, score=90) if(score=90) System.out.println(score+ System.out.println(score+优秀优秀);); 任务三任务三程序控制结构程序控制结构知识点详解知识点详解 else if(score=80) else if(score=80) System.out.println(score+ System.out.println(score+良好良好);); else if(score=70) else if(score

49、=70) System.out.println(score+ System.out.println(score+中等中等);); else if(score=60) else if(score=60) System.out.println(score+ System.out.println(score+及格及格);); else else System.out.println(score+ System.out.println(score+不及格不及格);); 任务三任务三程序控制结构程序控制结构知识点详解知识点详解程序编译运行的结果是在控制台输出如下信息:程序编译运行的结果是在控制台输出如下

50、信息: 65及格及格switchswitch选择结构:选择结构:在在JavaJava语言中,用语言中,用switchswitch结构也可以实现多分支选择,其语法结构也可以实现多分支选择,其语法格式为:格式为: switch ( switch (表达式表达式) ) casecase值值1: 1: 语句体语句体1; break; 1; break; case case值值2: 2: 语句体语句体2; break; 2; break; case case值值3: 3: 语句体语句体3;break; 3;break; 任务三任务三程序控制结构程序控制结构知识点详解知识点详解 case case值值n:

51、 n: 语句体语句体n; break; n; break; default: default: 语句体语句体n+1; break; n+1; break; 表达式的值必须是整型或者字符型数据,并且要与各个表达式的值必须是整型或者字符型数据,并且要与各个casecase子句子句之后的常量值类型保持一致。之后的常量值类型保持一致。一个一个switchswitch语句中,可以有多个语句中,可以有多个casecase子句,但是每个子句,但是每个casecase之后的之后的常量值不能相同。常量值不能相同。casecase后的值必须是整数值,后的值必须是整数值,casecase与值之间必须与值之间必须有空

52、格。有空格。casecase子句中的语句体可以是一条或者多条子句中的语句体可以是一条或者多条JavaJava语句,且语句,且可以不用花括弧可以不用花括弧“”括起来。括起来。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解一般情况下,每个一般情况下,每个casecase子句的最后是子句的最后是breakbreak语句。语句。breakbreak语句是可语句是可选的,用来从整个选的,用来从整个switchswitch语句中,跳出,继续执行语句中,跳出,继续执行switchswitch语句下语句下面的语句。如果没有使用面的语句。如果没有使用breakbreak语句,则继续执行下面的语句,则

53、继续执行下面的casecase子子句中的子语句体,直到遇到句中的子语句体,直到遇到breakbreak语句,或者整个语句,或者整个switchswitch语句结语句结束。束。breakbreak语句用来在执行完一个语句用来在执行完一个casecase分支后,使程序跳出分支后,使程序跳出switchswitch结构,即终止结构,即终止switchswitch语句的执行。语句的执行。当所有当所有casecase子句中的常量值都与表达式的值不相同时,则执行子句中的常量值都与表达式的值不相同时,则执行defaultdefault语句中的语句体,语句中的语句体,defaultdefault子句也是可选的

54、,所以如果表子句也是可选的,所以如果表达式的值与任何一个达式的值与任何一个casecase子句中的值都不匹配并且没有子句中的值都不匹配并且没有defaultdefault子句,程序不作任何操作,直接跳出子句,程序不作任何操作,直接跳出switchswitch语句。语句。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解当执行到当执行到switchswitch语句时,首先计算表达式的值,然后依次与语句时,首先计算表达式的值,然后依次与casecase子句中的常量作比较。当找到和表达式值相同的常量值后,将不子句中的常量作比较。当找到和表达式值相同的常量值后,将不在继续查找,并以此处作为进入

55、花括弧中在继续查找,并以此处作为进入花括弧中casecase子句的子语句体的子句的子语句体的插入点。插入点之前的子语句体不会再被执行,而插入点之后到插入点。插入点之前的子语句体不会再被执行,而插入点之后到第一个第一个breakbreak语句之前的所有子语句体都会被执行。遇到语句之前的所有子语句体都会被执行。遇到breakbreak语语句时,结束整个句时,结束整个switchswitch语句的执行,跳到其下面的语句,继续运语句的执行,跳到其下面的语句,继续运行程序。如果表达式的值与每一个行程序。如果表达式的值与每一个casecase后的值都不相等,则执行后的值都不相等,则执行defaultdef

56、ault后的语句,直至遇到该后的语句,直至遇到该switchswitch的结束符的结束符“ ”为止。为止。 任务三任务三程序控制结构程序控制结构知识点详解知识点详解例例3-33-3:将例:将例3-23-2的例子修改成用的例子修改成用switchswitch结构编写的形式。结构编写的形式。完整的程序完整的程序score1.javascore1.java如下:如下: public class score1 public class score1 public static void main(String angs) public static void main(String angs) int

57、 score=65; int score=65; /定义成绩变量定义成绩变量 int a=score/10; int a=score/10; switch(a) switch(a) case 9: case 9:/ case/ case子句子句 System.out.println(score+System.out.println(score+优秀优秀););/输出语句输出语句 break;break; case 8: case 8: System.out.println(score+ System.out.println(score+良好良好););/输出语句输出语句 任务三任务三程序控制结

58、构程序控制结构知识点详解知识点详解 break;break; case 7: case 7: System.out.println(score+ System.out.println(score+中等中等););/输出语句输出语句 break; break; case 6: case 6: System.out.println(score+ System.out.println(score+及格及格););/输出语句输出语句 break; break; default: System.out.println( score+ default: System.out.println( score+

59、不及格不及格 ); ); /输出语句输出语句 break; break; 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构【案例案例】在单机版考试系统的在单机版考试系统的TestArea.javaTestArea.java文件中文件中如下代码:如下代码: for(int i=0;ifileName.length;i+) for(int i=0;ifileName.length;i+) 【1 1】 list.add(fileNamei); list.add(fileNamei); 【2 2】 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构forfor循环

60、循环 forfor循环的语法格式为:循环的语法格式为: for ( for (循环初始值循环初始值; ; 循环条件循环条件; ; 循环增量循环增量) 循环体循环体 循环体可以是一条或者多条语句。一条语句时循环体可以是一条或者多条语句。一条语句时 可以省略,但可以省略,但为了增强程序的可读性最好不要省略为了增强程序的可读性最好不要省略, ,多条语句时必须用一对多条语句时必须用一对 括起。括起。循环初始值是循环变量赋初值的表达式,循环初始值可以并列多循环初始值是循环变量赋初值的表达式,循环初始值可以并列多个表达式,但它们之间要用逗号隔开。个表达式,但它们之间要用逗号隔开。 任务三任务三程序控制结构

61、程序控制结构子任务子任务2 循环结构循环结构循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑表达式。因为循环条件是循环结束的条件,所以编写循环条件表表达式。因为循环条件是循环结束的条件,所以编写循环条件表达式时要避免程序陷入达式时要避免程序陷入“死循环死循环”。当循环条件的值为。当循环条件的值为truetrue时执时执行循环体,当循环条件的值为行循环体,当循环条件的值为falsefalse时,循环结束,执行时,循环结束,执行forfor语句语句下面的语句。下面的语句。循环增量是增量表达式,每次执行完循环体后,都要执行该表达循环增量

62、是增量表达式,每次执行完循环体后,都要执行该表达式改变循环变量的值,以使得循环条件不成立,退出循环,从而式改变循环变量的值,以使得循环条件不成立,退出循环,从而避免避免“死循环死循环”。循环增量不仅可以是增量表达式,还可以是减。循环增量不仅可以是增量表达式,还可以是减量表达式,即循环变量的值不仅可以由小到大,还可以由大到小。量表达式,即循环变量的值不仅可以由小到大,还可以由大到小。forfor循环在执行时,首先执行循环变量初始化操作,然后判断循循环在执行时,首先执行循环变量初始化操作,然后判断循环条件是否成立,如果成立,则执行循环体中的语句,然后执行环条件是否成立,如果成立,则执行循环体中的语

63、句,然后执行增量部分。完成一次循环后,重新判断循环条件。增量部分。完成一次循环后,重新判断循环条件。 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构forfor循环通常用于循环次数能够确定的情况,但也可以根据循环循环通常用于循环次数能够确定的情况,但也可以根据循环结束条件完成循环次数不确定的情况。结束条件完成循环次数不确定的情况。例例3-43-4: 利用利用forfor循环求自然数循环求自然数1-1001-100的和。的和。完整的完整的for1.javafor1.java程序代码如下程序代码如下: : public class for1public class for1

64、public static void main(String args) public static void main(String args) int sum=0; int sum=0;/存放结果的变量存放结果的变量 for(int i=1;i=100;i+) / for(int i=1;i=100;i+) /初始化、执行循环体的条件、初始化、执行循环体的条件、 增量部分增量部分 sum=sum+i;sum=sum+i; / /循环体循环体 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构 System.out.println(1+2+3+System.out.prin

65、tln(1+2+3+100= +sum);/+100= +sum);/输出结果输出结果 程序编译运行的结果,在控制台输出如下:程序编译运行的结果,在控制台输出如下: 1+2+3+1+2+3+100= 5050+100= 5050whilewhile循环循环whilewhile循环的语法格式为:循环的语法格式为: while (while (循环条件循环条件) ) 循环体循环体 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑表达式。表达式。循环体可以是一条或者多条

66、语句。一条语句时循环体可以是一条或者多条语句。一条语句时 可以省略,但可以省略,但为了增强程序的可读性最好不要省略为了增强程序的可读性最好不要省略, ,多条语句时必须用一对多条语句时必须用一对 括起。括起。whilewhile循环结构在每一次循环之前先计算循环条件的值,如果为循环结构在每一次循环之前先计算循环条件的值,如果为truetrue,则执行循环体;如果为,则执行循环体;如果为falsefalse,循环体不被执行,循环体不被执行, ,转而执行转而执行循环体后面的语句。因此循环体后面的语句。因此whilewhile循环体可能被循环执行多次也可循环体可能被循环执行多次也可能一次也不被执行。能

67、一次也不被执行。 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑循环条件必须为逻辑型的常量或者变量、关系表达式、或者逻辑表达式。表达式。例例3-5: 3-5: 用用whilewhile循环求循环求5 5的阶乘。的阶乘。完整的完整的jiecheng.javajiecheng.java程序代码如下:程序代码如下: public class jiechengpublic class jiecheng public static void main(String args) public static void main(S

68、tring args) int s=1,n=1; int s=1,n=1; while(n=5) / while(n=5) /循环条件循环条件 s=s*n; / s=s*n; /循环体循环体 n=n+1; n=n+1; System.out.println(5!= +s); / System.out.println(5!= +s); /输出结果输出结果 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构程序编译运行的结果,在控制台输出如下:程序编译运行的结果,在控制台输出如下: 5 5!= 120= 120 do dowhilewhile循环循环 do dowhilewhil

69、e循环的语法格式为:循环的语法格式为: do do 循环体循环体 while ( while (循环条件循环条件););循环条件的值必须是逻辑型的,可以是逻辑型的常量或者变量、关循环条件的值必须是逻辑型的,可以是逻辑型的常量或者变量、关系表达式、或者逻辑表达式。系表达式、或者逻辑表达式。循循环体可以是一条或者多条语句。一条语句时循循环体可以是一条或者多条语句。一条语句时 可以省略,但为可以省略,但为了增强程序的可读性最好不要省略了增强程序的可读性最好不要省略, ,多条语句时必须用一对多条语句时必须用一对 括起括起 任务三任务三程序控制结构程序控制结构子任务子任务2 循环结构循环结构不论循环条件

70、的值是不论循环条件的值是truetrue还是还是falsefalse,循环体中的语句至少被执行一,循环体中的语句至少被执行一次。次。在在do-whiledo-while形式中,形式中,while ( while ( 表达式表达式 ) )后边要有分号,而在后边要有分号,而在whilewhile形形式中,则不需要分号。式中,则不需要分号。whilewhile语句和语句和do-whiledo-while语句没有本质上的区别,在大多数情况下可以语句没有本质上的区别,在大多数情况下可以互相代替。互相代替。当执行到当执行到do-whiledo-while语句时,先执行语句时,先执行do-whiledo-w

71、hile语句的里循环体,然后语句的里循环体,然后判断判断do-whiledo-while语句中的循环条件。如果值是语句中的循环条件。如果值是truetrue,则再次执行循环,则再次执行循环体,然后再次计算循环条件的值,如果值是体,然后再次计算循环条件的值,如果值是truetrue,则继续执行循环,则继续执行循环体,如此反复循环下去。直到循环条件的值为体,如此反复循环下去。直到循环条件的值为falsefalse时,则不再执行时,则不再执行循环体,循环结束,执行循环体,循环结束,执行do-whiledo-while下面的语句。下面的语句。 任务三任务三程序控制结构程序控制结构子任务子任务3 控制转

72、移结构控制转移结构breakbreak语句语句 breakbreak语句通常用在循环结构和语句通常用在循环结构和switchswitch结构中。它的作用是使结构中。它的作用是使程序从一个语句体的内部跳出去,继续执行该语句体下面的语程序从一个语句体的内部跳出去,继续执行该语句体下面的语句。例如,从句。例如,从switchswitch语句的语句的casecase子句中跳出,或者从循环体内子句中跳出,或者从循环体内跳出。在循环语句中,跳出。在循环语句中,breakbreak语句一般与语句一般与ifif语句一起使用,满语句一起使用,满足一定条件时跳出循环。足一定条件时跳出循环。例例3-63-6:bre

73、akbreak语句的应用。该程序的循环条件永远为真,但是语句的应用。该程序的循环条件永远为真,但是使用使用breakbreak语句可以强行退出循环。语句可以强行退出循环。 任务三任务三程序控制结构程序控制结构子任务子任务3 控制转移结构控制转移结构完整的完整的break1.javabreak1.java程序代码如下:程序代码如下: public class break1public class break1 public static void main(String args) public static void main(String args) for(int a=1;true;a+)

74、 for(int a=1;true;a+) if(a=6) if(a=6) break; break; System.out.println(a); System.out.println(a); System.out.println( System.out.println(退出循环了!退出循环了!);); 任务三任务三程序控制结构程序控制结构子任务子任务3 控制转移结构控制转移结构程序编译运行的结果,在控制台输出如下:程序编译运行的结果,在控制台输出如下: 1 1 2 2 3 3 4 4 5 5 退出循环了!退出循环了!continuecontinue语句语句 任务三任务三程序控制结构程序控制

75、结构子任务子任务3 控制转移结构控制转移结构continuecontinue语句语句continuecontinue语句必须出现在循环语句中,用来结束本次循环,跳过语句必须出现在循环语句中,用来结束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。对于定是否继续循环。对于forfor语句,在进行终止条件的判断前,还语句,在进行终止条件的判断前,还要先执行迭代语句。对于要先执行迭代语句。对于whilewhile和和do whiledo while语句直接进行循环条语句直接进行循环条件测试。件测试。cont

76、inuecontinue语句用于使程序流程转到循环语句的语句用于使程序流程转到循环语句的“ ”处。处。例例3-73-7:continuecontinue语句的应用。该程序在循环条件为真的情况下,语句的应用。该程序在循环条件为真的情况下,当符合某个条件时用当符合某个条件时用continuecontinue语句强制跳过一些语句,达到控制语句强制跳过一些语句,达到控制循环运行结果的目的。循环运行结果的目的。 任务三任务三程序控制结构程序控制结构子任务子任务3 控制转移结构控制转移结构完整的完整的continue1.javacontinue1.java程序代码如下:程序代码如下: public cla

77、ss continue1public class continue1 public static void main(String args) public static void main(String args) for(int a=1;a=10;a+) for(int a=1;a=10;a+) if(a=5) if(a=5) continue; continue; System.out.println(a); System.out.println(a); System.out.println( System.out.println(退出循环了!退出循环了!);); 任务三任务三程序控制结

78、构程序控制结构子任务子任务3 控制转移结构控制转移结构程序编译运行的结果,在控制台输出如下:程序编译运行的结果,在控制台输出如下: 6 6 7 7 8 8 9 9 10 10 退出循环了!退出循环了! 任务四任务四数组数组子任务子任务1 一维数组一维数组一维数组的定义一维数组的定义 一维数组的定义分为声明数组和为数组分配内存空间两步。一维数组的定义分为声明数组和为数组分配内存空间两步。第一步:声明数组。第一步:声明数组。语法格式为语法格式为: type arrayName; 或或 type arrayName; typetype包括基本数据类型和对象数据类型。包括基本数据类型和对象数据类型。

79、arrayNamearrayName是数组名,数组名称必须符合是数组名,数组名称必须符合JavaJava标识符的命名规则。标识符的命名规则。在在里面不能有任何内容。里面不能有任何内容。 任务四任务四数组数组子任务子任务1 一维数组一维数组在在里面不能有任何内容。里面不能有任何内容。例如:例如:int results; int results; /声明了一个整型数组声明了一个整型数组, ,数组名为数组名为resultsresults boolean info; boolean info;/声明了一个逻辑型数组声明了一个逻辑型数组, ,数组名为数组名为infoinfo double b; doub

80、le b;/声明了一个双精度浮点型数组声明了一个双精度浮点型数组, ,数组名为数组名为b b以上这些声明语句都是正确的。声明数组时只是告诉系统一个新以上这些声明语句都是正确的。声明数组时只是告诉系统一个新的数组的名称和类型,数组本身不能存放任何元素,现在数组值的数组的名称和类型,数组本身不能存放任何元素,现在数组值均为均为nullnull。 任务四任务四数组数组子任务子任务1 一维数组一维数组第二步:为数组分配内存空间。第二步:为数组分配内存空间。语法格式为语法格式为: arrayName= new typearraysize;newnew是为数组分配内存使用的关键字。是为数组分配内存使用的关

81、键字。arraysizearraysize是数组的大小,即数组包含多少个元素。是数组的大小,即数组包含多少个元素。例如:例如:results = new int10; /results = new int10; /数组数组resultsresults包含包含1010个元素个元素通常也可以将声明与分配内存空间合成一条语句。通常也可以将声明与分配内存空间合成一条语句。例如:例如:int results = new int10;int results = new int10;/声明整型数声明整型数组组resultsresults,并为其分配,并为其分配1010个元素(空间)个元素(空间) 任务四任务

82、四数组数组子任务子任务1 一维数组一维数组一维数组的初始化一维数组的初始化 当一个数组用当一个数组用newnew关键字为其分配内存后,系统自动用数据类关键字为其分配内存后,系统自动用数据类型的缺省值初始化所有的数组元素。表型的缺省值初始化所有的数组元素。表3-83-8给出了一维数组缺给出了一维数组缺省初始化值,但是在实际应用中通常不使用系统的数组默认值,省初始化值,但是在实际应用中通常不使用系统的数组默认值,而是重新给数组赋初值。而是重新给数组赋初值。 类型类型初始化值初始化值charcharu0000u0000intint0 0longlongfloatfloatdoubledouble0.

83、0d0.0dbooleanbooleanFALSEFALSE引用类型引用类型nullnull任务四任务四数组数组子任务子任务1 一维数组一维数组按照顺序依次给每个元素赋值。按照顺序依次给每个元素赋值。 例如:给数组例如:给数组resultsresults赋值赋值 results0 = 81; results0 = 81; results1 = 92; results1 = 92; results9 = 45; results9 = 45;在定义数组的同时直接给数组赋初值,初值的个数是数组的长在定义数组的同时直接给数组赋初值,初值的个数是数组的长度。初值必须用花括弧括起来,各初值之间用逗号(半角

84、)分度。初值必须用花括弧括起来,各初值之间用逗号(半角)分隔开。隔开。 任务四任务四数组数组子任务子任务1 一维数组一维数组例如:例如:int results = 87,90,77,55,98,37,64,100 ;/int results = 87,90,77,55,98,37,64,100 ;/数组有数组有8 8个元素在使用第个元素在使用第2 2种方法时,一定要注意定义和初始化种方法时,一定要注意定义和初始化要在一条语句中完成,也就是说不可以定义数组后,在另一条要在一条语句中完成,也就是说不可以定义数组后,在另一条语句中再给数组赋初值例如,下面的写法是错误的。语句中再给数组赋初值例如,下面

85、的写法是错误的。 int results;int results; results = 87,90,77,55,98,37,64,100 ; results = 87,90,77,55,98,37,64,100 ;例例3-8: 3-8: 定义一个一维数组定义一个一维数组d d,重新给数组赋初值,最后输出数组,重新给数组赋初值,最后输出数组长度以及数组的每一个元素值。长度以及数组的每一个元素值。 任务四任务四数组数组子任务子任务1 一维数组一维数组完整的完整的array1.javaarray1.java程序代码如下:程序代码如下: public class array1 public class

86、 array1 public static void main(String args) public static void main(String args) int d = new int 1, 14, 6, 2, 3, 78, 21, 45, 79, 34 int d = new int 1, 14, 6, 2, 3, 78, 21, 45, 79, 34 ;/ / 通过枚举法创建了数组对象,该数组有通过枚举法创建了数组对象,该数组有1010个元素值个元素值 for (int i=0;id.length;i+) for (int i=0;i3 & 6=6 & 123 & 6=6 & 1

87、2b)if(ab)System.out.println(a+System.out.println(a+大于大于+b); +b); else else System.out.println(a+System.out.println(a+小于小于+b);+b); 程序的输出结果为程序的输出结果为:_:_。学材小结学材小结 理论知识理论知识 选择题选择题 1 1、定义一个双精度型变量、定义一个双精度型变量numnum的语句是的语句是 。A.A.int num; B. double num; C. float num; D. boolean numint num; B. double num; C.

88、float num; D. boolean num;2 2、若已定义数组、若已定义数组a a:int a = 0,1,2,3,4,5,6,7,8,9int a = 0,1,2,3,4,5,6,7,8,9,则对,则对a a数组元素数组元素正确的引用是正确的引用是_。A.A.a-3a-3B. a9B. a9C. a10C. a10D. a(0)D. a(0)3 3、应用程序的、应用程序的mainmain方法中有以下语句,则输出的结果是方法中有以下语句,则输出的结果是_。int b=1, 1, 1, 2,2, 3;int b=1, 1, 1, 2,2, 3;int sum=0;int sum=0;f

89、or(int i=0;ib.length;i+) for(int i=0;ib.length;i+) 学材小结学材小结 理论知识理论知识 选择题选择题 for(int j=0;jbi.length;j+) for(int j=0;jbi.length;j+) sum+=bij;sum+=bij; System.out.println(sum=+sum);System.out.println(sum=+sum);A.A.1010 B. 6 B. 6 C. 9 C. 9 D. 13 D. 134 4、有如下代码,则程序的运行结果是、有如下代码,则程序的运行结果是_。public class for

90、1public class for1public static void main(String args)public static void main(String args)学材小结学材小结 理论知识理论知识 选择题选择题 int sum=0;int sum=0;for(int i=1;i=100;i+)for(int i=1;i=0)3*x+5 (x=0)x-5 (x0)x-5 (x0)学材小结学材小结 理论知识理论知识 实训任务实训任务【实训步骤实训步骤】 步骤步骤1 1 根据题目要求确定要使用根据题目要求确定要使用ifif的双分支结构来求解该分段函数。的双分支结构来求解该分段函数。

91、步骤步骤2 2 补充代码。补充代码。public class_public class_public static void main(String args) public static void main(String args) _;if(_)if(_) _;System.out.println( y=+System.out.println( y=+ ); ); else else ; ;System.out.println( y=+System.out.println( y=+ ); ); _ _ 学材小结学材小结 理论知识理论知识 实训任务实训任务步骤步骤3 3 在机器上调试通过该代

92、码,输出结果。在机器上调试通过该代码,输出结果。 拓展练习拓展练习1 1、编写程序输出如下九九乘法表。编写程序输出如下九九乘法表。 学材小结学材小结 理论知识理论知识 拓展练习拓展练习2 2、用循环结构求、用循环结构求1010!3 3、求两个正整数的求两个正整数的最大公约数和最小公倍数。最大公约数和最小公倍数。4 4、定义一个数组定义一个数组a a:int a = 8, 25, 17, 36, 13, 2, 89, 45 ; int a = 8, 25, 17, 36, 13, 2, 89, 45 ; 求求该数组的最大值、最小值和平均值。该数组的最大值、最小值和平均值。5 5、定义两个二维数组、定义两个二维数组 int a=1,2,3,-1,2,1,0,2;int a=1,2,3,-1,2,1,0,2;int b=4,1,3,-1,1,9,2,0,1,1,3,4;int b=4,1,3,-1,1,9,2,0,1,1,3,4;求这两个数组的乘积(矩阵相乘)。求这两个数组的乘积(矩阵相乘)。6 6、给定、给定3 3个整数,找出其中的最大数,并输出该最大值。个整数,找出其中的最大数,并输出该最大值。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号