收藏 分享(赏)

Java 自学课件 - 条件语句.ppt

上传人:ysd1539 文档编号:7016843 上传时间:2019-05-01 格式:PPT 页数:18 大小:281KB
下载 相关 举报
Java 自学课件 - 条件语句.ppt_第1页
第1页 / 共18页
Java 自学课件 - 条件语句.ppt_第2页
第2页 / 共18页
Java 自学课件 - 条件语句.ppt_第3页
第3页 / 共18页
Java 自学课件 - 条件语句.ppt_第4页
第4页 / 共18页
Java 自学课件 - 条件语句.ppt_第5页
第5页 / 共18页
点击查看更多>>
资源描述

1、YANGLINBNUITC Java程序设计 第 3章 控制语句 学习目标 掌握布尔数据类型、布尔表达式和布尔运算符 使用 if、 switch语句控制程序的执行 使用条件运算符 了解字符串格式化输出 了解操作数执行顺序、操作符优先级和结合方向 布尔数据类型 boolean类型表示真 (true)或假 (false)。 关系运算符 : , =, =, != 关系运算符的计算结果是 boolean类型 Boolean类型不能与其它数据类型混合运算 布尔运算符 : !, System.out.println(“The area for the circle of radius “ + radius

2、 + “ is “ + area); if-else语句 语法 if(bool-expression) statement or block 1 else statement or block 2 布尔表达式 语句语句块 1 true false 语句语句块 2 if (radius = 0) area = radius * radius * 3.14159; System.out.println(“The area for the circle of radius “ + radius + “ is “ + area); else System.out.println(“Negative i

3、nput“); 嵌套 if语句 if (score 90.0) grade = A; else if (score = 80.0) grade = B; else if (scroe = 70.0) grade = C; else if (score = 60.0) grade = D; else grade = F; if (score 90.0) grade = A; else if (score = 80.0) grade = B; else if (scroe = 70.0) grade = C; else if (score = 60.0) grade = D; else grade

4、 = F; 等价于 注意 else语句与同一块中最近的 if语句匹配 int i = 1, j = 2, k = 3; if (i j) if(i k) System.out.println(“A”); else System.out.println(“B”); 相当于 int i = 1, j = 2, k = 3; if (i j) if(i k) System.out.println(“A”); else System.out.println(“B”); 提示 尽量避免使用 if语句将测试值赋值给布尔变量,应直接将测试值赋给变量。 if (number % 2 = 0) even = t

5、rue; else even = false; 等价于 even = number % 2 = 0; 提示 避免在条件表达式中使用比较操作符判断布尔变量的真假。 if (even = true) System.out.println(“It is even.”); 等价于 if (even) System.out.println(“It is even.”); 例 税款计算问题 美国的个人所得税根据纳税人情况和须纳税收入进行计算。编写程序,用户输入纳税人情况和须纳税收入,计算出 2002年的所得税。 Example:ComputeTaxWithSelectionStatement.java 2

6、002年美国个人所得税税率表 switch语句 语法 switch(expression) case value1 : statement(s) break; case value2 : statement(s) break; default : statement(s) switch语句的判断条件只能是byte,short,char,int。 value1-valueN必须与判断条件类型相同,且为常量表达式,不能是变量。 case子句后面可以跟多条语句,这些语句可以不用大括号括起来。 程序将从第一个匹配的 case子句处开始执行后面的所有代码(包括后面 case子句中的代码)。可以使用bre

7、ak语句跳出 switch语句。 default语句是可选的。当所有 case子句条件都不满足时执行。 Example:TestSwitch.java 条件表达式 语法 bool-expression ? expression1 : expression 2 当 bool-expression为真时,表达式的结果为 expression1,否则结果为 expression2 例如:求 num1和 num2的最大值 max = (num1 num2) ? num1 : num2; 格式化输出 JDK1.5提供了格式化控制台输出方法 System.out.printf(format, item1,

8、 item2, ); 格式化 字符串 String.format(format, item1, item2, ); 格式描述符 %b 布尔值 %c 字符 %d 十进制整数 %f 浮点数 %e 科学计数法 %s 字符串 Example:TestPrintf.java 操作符优先级和结合性 括号优先级最高,如果括号有嵌套,内部括号优先执行。 如果没有括号,则根据操作符的优先级和结合规则确定执行顺序。 如果相邻的操作符有相同的优先级,则根据结合规则确定执行顺序。 除赋值运算符之外的二元运算符都是左结合的。 赋值运算符和 ?:运算符是右结合的。 例如: a+b-c+d 等价于 (a+b)-c)+d a

9、=b+=c=5 等价于 a=(b+=(c=5) 运算符优先级 后缀运算符 . (params) expr+ expr 前缀运算符 +expr -expr +expr expr ! 创建或类型转换 new (type)expr 乘除 * / % 加减 + - 移位 关系 = = = int x = a + (+a); x的结果为 1 int a = 0; int x = (+a) + a; x的结果为 2 表达式规则 规则 可能的情况下,从左向右计算所有子表达式 根据运算符的优先级进行运算 优先级相同的运算符,根据结合方向进行运算 3 + 4 * 4 5 * (4 + 3) - 1 的执行顺序为: 1. 3 + 4 * 4 5 * (4 + 3) - 1 2. 3 + 4 * 4 5 * 7 1 3. 3 + 16 5 * 7 1 4. 3 + 16 35 1 5. 19 35 1 6. 19 34 7. false

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > Java

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报