运算符、表达式和语句(王宗江)

上传人:san****019 文档编号:70556419 上传时间:2019-01-17 格式:PPT 页数:43 大小:4.60MB
返回 下载 相关 举报
运算符、表达式和语句(王宗江)_第1页
第1页 / 共43页
运算符、表达式和语句(王宗江)_第2页
第2页 / 共43页
运算符、表达式和语句(王宗江)_第3页
第3页 / 共43页
运算符、表达式和语句(王宗江)_第4页
第4页 / 共43页
运算符、表达式和语句(王宗江)_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《运算符、表达式和语句(王宗江)》由会员分享,可在线阅读,更多相关《运算符、表达式和语句(王宗江)(43页珍藏版)》请在金锄头文库上搜索。

1、第3章,运算符、表达式和语句,3.1 运算符与表达式 3.2 语句概述 3.3 if条件分支语句 3.4 开关语句 3.5 循环语句 3.6 break和continue语句 3.7 数组与for语句 3.8 枚举类型与for、switch语句,主要内容,3.1 运算符与表达式,对数据进行运算时,需要使用各种不同的运算符 在Java语言中,运算符分为下面几类: 算术运算符 关系运算符 逻辑运算符 赋值运算符 位运算符 条件运算符,运算符-1,算术运算符与算数表达式,说明,1加减运算符: +,- 加减运算符是二目运算符;加减运算符的结合方向是从左到右;加减运算符的操作元是整型或 浮点型数据。 2

2、乘、除和求余运算符: *,/,% 以上运算符是二目运算符,结合方向是从左到右,乘、除和求余运算符的操作元是整型或浮点型 数据。 3自增、自减运算符:a+(a-),+a(-a) 是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型 变量。作用是使变量的值增1或减1。+a(-a)表示在使用a之前,先使a的值增(减)1。 a+(a-)表示在使用a之后,使a的值增(减)1。 4 算术表达式: 用算术符号和括号连接起来的符合java语法规则的式子,称为算术表达式。,算术混合运算精度,精度从“低”到“高”排列的顺序是: byte short char int long fl

3、oat double Java在计算算术表达式的值时,使用下列计算精度规则: 1如果表达式中有双精度浮点数(double型数据),则按双精度进行 运算。 2如果表达式中最高精度是单精度浮点数(float型数据),则按单精 度进行运算。 3如果表达式中最高精度是long型整数,则按long精度进行运算。 4如果表达式中最高精度低于int型整数,则按int精度进行运算。,运算符-2,关系运算符与关系表达式,说明,关系运算符是二目运算符,用来比较两个值的关系。关 系运算符的运算结果是boolean型,当运算符对应的关 系成立时,运算结果是true,否则是false。 3=2 false 3 = 2

4、false (6-5)= (7-6) true,输出: false false true,运算符-3,逻辑运算符与逻辑表达式,说明及示例,(1)其中&、|为二目运算符,实现逻辑与、逻辑或;规则? (2)!为单目运算符,实现逻辑非。 (3)逻辑运算符的操作元必须是boolean型数据,逻辑运算符可以 用来连接关系表达式。 !(32) false (32) &(72) |(76) true,输出: false false true,运算符-4,赋值运算符 赋值运算符为一个单独的等于号“=”,它将值赋给变量 。如:,int i = 3;,此外赋值运算符可以与算术运算符结合成一个运算符。如:,i+=3

5、; / 等效于i=i+3,类似的赋值运算符如下表所示:,注意:不要将赋值运算符“=”与等号逻辑运算符“=”混淆。,运算符-5,位运算符,例3.1,public class Example3_1 public static void main(String args) char a1=中,a2=国,a3=科,a4=大; char secret=A; a1=(char)(a1secret); a2=(char)(a2secret); a3=(char)(a3secret); a4=(char)(a4secret); System.out.println(“密文:“+a1+a2+a3+a4); a1

6、=(char)(a1secret); a2=(char)(a2secret); a3=(char)(a3secret); a4=(char)(a4secret); System.out.println(“原文:“+a1+a2+a3+a4); ,运算符-6,条件运算符 条件运算符是三元运算符,语法格式为 :, ? e1 : e2,表达式值的类型为布尔类型,若表达式的值为真,则返回e1的值 表达式的值为假,则返回e2的值。,示例,public class ThreeOP public static void main(String args) int num1 = 3, num2 = 6; boo

7、lean result = (num1 num2) ? true : false; System.out.println(result); ,演示结果: false,运算符-7,Instanceof 运算符,判断某对象是否属于某类? instanceof 运算符是二目运算符,左面的操作元是一个对象;右面是一个类。当左面的对象是右面的类或子类创建的对象时,该运算符运算的结果是true ,否则是false。,运算符-综述,运算符优先级,优先级是指同一表达式中多个运算符被执行的次序,在表达式求值 时,先按运算符的优先级由高到低的次序执行。Java中运算符优先级如下表所示。,3.2 语句概述,Java

8、里的语句可分为以下六类: 1方法调用语句。如:System.out.println(“ Hello“); 2表达式语句 表示式尾加上分号。比如赋值语句:x=23; 3复合语句 可以用 把一些语句括起来构成复合语句,如: z=123+x; System.out.println(“How are you“); 4空语句。 一个分号也是一条语句,称做空语句。 5控制语句。控制语句分为条件分支语句、开关语句和循环语句。 6package语句和 import语句。它们和类、对象有关,将在第4章讲解。,3.3 if条件分支语句,条件分支语句按着语法格式可细分为三种形式: if语句 if-else语句 If

9、 - else if - else 语句,3.3.1 if 语句,If 语句是单条件分支语句,即根据一个条件来控制程序执行的流程。,if条件语句的基本语法格式: if(布尔表达式) 若干语句 ,例子,例1:没有 else部分的例子 Public class IfTry public static void main(String args ) int a1=95; if(a1=90) System.out.println(“祝贺你,你获得奖学金!“); ,3.3.2 if-else语句,if-else 语句是双条件分支语句,即根据一个条件来控制程序执行的流程。,if-else条件语句基本语法格

10、式: if(布尔表达式) 语句序列1 else /否则 语句序列2 ,例子,例2:有 else部分的例子 Public class IfTry2 public static void main(String args ) int a1=59; if(a1=60) System.out.println(“你及格了!“); else System.out.println(“你没及格,请继续努力!“); ,3.3.3 if -else if- else 语句,if- else if -else 语句是多条件分支语句,即根据多个条件来控制程序执行的流程。,if(表达式) 若干语句 else if(表达

11、式) 若干语句 else 若干语句 ,例子,public class T1 public static void main(String args) int a=10; if(a30) System.out.println(“a30“); else if(a20) System.out.println(“a20“); else if(a10) System.out.println(“a10“); else if(a0) System.out.println(“a0“); ,3.4 switch开关语句,switch 语句是单条件多分支的开关语句,它的一般格式定义如下(其中default语句是可

12、选的) switch(表达式) case 常量值1: 语句系列1 break; case 常量值2: 语句系列2 break; . case 常量值n: 语句系列n break; default: 若干语句 ,3.4 switch 开关语句(续),switch语句的注意点: 1.使用switch 语句时,要注意表达式必须是符合byte,char,short,int类型的表达式,而不能使用浮点类型或long类型,也不能为一个字符串; 2. switch语句将表达式的值依次与每个case子句中的常量值相比较。如果匹配成功,则执行该case子句中常量值后的语句,直到遇到break语句为止; 3. c

13、ase子句中常量的类型必须与表达式的类型相容,而且每个case子句中常量的值必须是不同的; 4. default子句是可选的,当表达式的值与任一case子句中的值都不匹配时,就执行default后的语句。如果表达式的值与任一case子句中的值都不匹配且没有default子句,则程序不执行任何操作,而是直接跳出switch 语句,进入后续程序段的执行。,3.4 switch 开关语句(续),5. break语句用来在执行完一个case 分支后,使程序跳出switch 语句,执行switch 语句的后续语句。 6. 在一些特殊的情况下,例如多个不同的case值要执行一组相同的操作,语句序列可以只出

14、现一次,如: switch(MyGrade) case A: case B: case C: case D: MyGrade=“及格!”; break; default : MyGrade=“不及格”; ,3.4 switch 开关语句(续),7.case 分支中包括多个执行语句时,可以不用花括号“”括起; 8.通过if-else if 语句可以实现switch 语句所有的功能。但通常使用switch语句更简练,且可读性强,程序的执行效率也高; 9. if-else if 语句可以基于一个范围内的值或一个条件来进行不同的操作,但switch 语句中的每个case 子句都必须对应一个单值。,例子

15、,public class TestSwitch public static void main(String args) int grade=100; int x=grade/10; switch(x) case 10: case 9: System.out.println(“成绩为优!“);break; case 8: System.out.println(“成绩为良!“);break; case 7: System.out.println(“成绩为中!“);break; case 6: System.out.println(“成绩为及格!“);break; default: System

16、.out.println(“真糟糕,不及格!“); ,3.5 循环语句,循环语句是根据条件,要求程序反复执行某些操作,直到程序“满意”为止。 包括如下几种循环: for循环语句 while 循环 do-while循环 注意:循环语句的三个要素,3.5.1 for循环语句,for语句的语法格式: for (表达式1; 表达式2; 表达式3) 循环体 for语句的执行规则是: (1)计算“表达式1(初值表达式),完成必要的初始化工作。 (2)判断“表达式2”(条件表达式)的值。若“表达式2”的值为true,则执行循环体,否则结束 for 语句的执行。 (3)执行循环体后,计算“表达式3”,以便改变循环

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

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