《《运算符控制结构》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《运算符控制结构》PPT课件.ppt(23页珍藏版)》请在金锄头文库上搜索。
1、JavaJava运算符运算符 表达式表达式1.1.算术运算符算术运算符2.2.关系运算符关系运算符3.3.布尔逻辑运算符布尔逻辑运算符4.4.位运算符位运算符5.5.赋值类运算符赋值类运算符6.6.条件运算符条件运算符7.7.其它运算符其它运算符1. 算术运算符算术运算符表达式表达式算术运算符包括:算术运算符包括:+, -, *, /, +, -, *, /, +, -, %+, -, %没有指数运算符没有指数运算符double num1=math.pow(2.0, 3.0); / 2.0double num1=math.pow(2.0, 3.0); / 2.03.0 3.0 整数除法:截去余
2、数整数除法:截去余数(7 / 5 (7 / 5 结果为结果为 1) 1)实型数据除法:保证精度实型数据除法:保证精度(0.7 / 5 (0.7 / 5 结果为结果为 0.14) 0.14)取模:返回余数取模:返回余数(7 % 5 (7 % 5 结果为结果为 2) 2)-7 / 5 =-7 % 5 =7 % -5 =5.5 % 1.0 =-1-220.5练练习习精度规则:数据按参与运精度规则:数据按参与运算的操作数的最高精度作算的操作数的最高精度作为结果精度。为结果精度。字符型与整型的结果为字符型与整型的结果为intint型型单目自增单目自增/ /自减运算符自减运算符前自增前自增/ /前自减运算
3、符前自减运算符运算符在变量的前面运算符在变量的前面, , 例如例如: +: +c c 或或 - -c c先改变变量的值,再返回表达式的值先改变变量的值,再返回表达式的值后自增后自增/ /后自减运算符后自减运算符运算符在变量的后面运算符在变量的后面, , 例如例如: : c+ c+ 或者或者 c-c-先返回变量原有的值,再改变变量的值先返回变量原有的值,再改变变量的值2. 2. 关系运算符关系运算符 表达式表达式六个关系运算符六个关系运算符: : 、=、 =和和 != !=这些运算符组成的表达式的这些运算符组成的表达式的值只能是值只能是true or falsetrue or false且参与比
4、较的数据必须且参与比较的数据必须具有可比性具有可比性赋值赋值=练习练习: :1 2; 1 2; 3.5 != 1; 3.5 != 1; 51.5 = 23.0; 51.5 = 23.0; 540 = 654; 540 = 654; 24 = 3*8; 24 = 3*8; boolean test1=(10 10); boolean test1=(10 带符号右移带符号右移6)6) 不带符号右移不带符号右移练习:练习:1 1、用、用 实现实现 2 2、输出任意一个整数的二进、输出任意一个整数的二进制表示形式的字符串制表示形式的字符串 Integer.toBinaryString(x)Intege
5、r.toBinaryString(x); ;5. 5. 赋值类运算符赋值类运算符赋值类运算符包括:赋值类运算符包括:= =、+=+=、-=-=、= a=a+b; a=a+b;等价于等价于a+=b;a+=b; a=1 a=1;即即a a等于等于a a带符号右移一位,等价于带符号右移一位,等价于a=a1;a=a1;6. 6. 其它运算符其它运算符不同的运算符具有不同的优先顺序不同的运算符具有不同的优先顺序可以用可以用( )( )来改变优先顺序或使表达式更容易理解来改变优先顺序或使表达式更容易理解例如例如: : a + b + c / 3 a + b + c / 3 (a + b + c ) / 3
6、(a + b + c ) / 3Java Java 语句概述:语句概述:方法调用语句方法调用语句表达式语句(定义、声明语句)表达式语句(定义、声明语句)复合语句复合语句控制语句控制语句PackagePackage、importimport语句语句控制结构控制结构顺序结构顺序结构JavaJava最基本的结构最基本的结构选择结构选择结构三种类型三种类型: : ifif、if/elseif/else和和switch switch 循环结构循环结构三种类型三种类型: : forfor、whilewhile和和do/whiledo/whileifif语句语句if (if (布尔表达式布尔表达式) ) 一
7、条或多条语句一条或多条语句 ifif语句的格式语句的格式: (单分支)(单分支)if (if (布尔表达式布尔表达式) ) 语句语句或或例如例如if ( grade = 60 ) if ( grade = 60 ) System.out.println( Passed ); System.out.println( Passed ); / Here could be a statement block./ Here could be a statement block.if-elseif-else语句语句if-elseif-else语句的格式是语句的格式是: :if if ( (布尔表达式布尔表
8、达式) ) 语句语句1 1或语句块或语句块1 1elseelse 语句语句2 2或语句块或语句块2 2例如:例如:if (grade60)if (grade60) System.out.println(Passed!); System.out.println(Passed!);elseelse System.out.println(Failed!); System.out.println(Failed!);if-else语句流程图语句流程图grade = 60trueprint “Failed”falseprint “Passed”双条件分支的双条件分支的if-else语句流程图语句流程图条件
9、运算符条件运算符 ( ? ( ? : ): )( ( condcond ? ? express1express1 : : express2express2 ) )例例 1 1System.out.println(studentGrade = 60 ? PassedSystem.out.println(studentGrade = 60 ? Passed“ : : Failed);Failed);例例2 2 if (a b)if (a b) max = a; max = a; elseelse max = b; max = b;max = ( a b ? a : b );max = ( a b
10、? a : b );嵌套嵌套if-else语句语句if ( studentGrade = 90 ) System.out.println( A );else if ( studentGrade = 80 ) System.out.println( B ); else if ( studentGrade = 70 ) System.out.println( C ); else if ( studentGrade = 60 ) System.out.println( D ); else System.out.println( F ); 注意事项注意事项如果不用如果不用“ ” ,则,则“elseel
11、se”总是与最接近它的前总是与最接近它的前一个一个“ifif”相匹配相匹配(最好用(最好用“”,进行标识),进行标识)例如例如: : if ( x 5 ) if ( x 5 ) if ( y 5 ) if ( y 5 ) System.out.println( x and y are 5 ); System.out.println( x and y are 5 ); else else System.out.println( x is = 5 ); System.out.println( x is = 5 ); 等价于?等价于?结论:当结论:当ifif或或elseelse后的语句多于一条时,一
12、定用后的语句多于一条时,一定用,如不用时只有一条语句有效。在不影响程序可读性的如不用时只有一条语句有效。在不影响程序可读性的条件下此处大括号可以省略。条件下此处大括号可以省略。switchswitch语句的形式是语句的形式是: :switch switch ( (表达式表达式) ) casecase 值值1 1: : 语句组语句组1 1 break;break;casecase 值值2:2: 语句组语句组2 2 break;break; casecase 值值n:n: 语句组语句组n n break; break; defaultdefault: : 语句组语句组( (n+1) /n+1) /
13、最后的最后的break可省可省 多多分分支支选选择择结结构构s sw wi it tc ch h语语句句整型或字符整型或字符型变量型变量switchswitch语句流程图语句流程图break;break;break;case a action(s)case b action(s)case z action(s)default action(s)case acase bcase ztruetruetruefalsefalsefalseforfor循环语句循环语句格式格式: : for (for (表达式表达式1;1;表达式表达式2;2;表达式表达式3)3) 语句或语句块语句或语句块也可写成也可写
14、成: :表达式表达式1;1; while (while (表达式表达式2 ) 2 ) 语句或语句块语句或语句块 表达式表达式3;3; FTfor 循环结构循环结构表达式表达式1表达式表达式2表达式表达式3循环体循环体循环结构的四个要素:循环结构的四个要素:初始化初始化循环体循环体循环变量修改循环变量修改循环条件循环条件练习:练习:1、求、求1+2+3+1002、求、求100!3、求完数、求完数for (for (表达式表达式1;1;表达式表达式2;2;表达式表达式3)3) 语句或语句块语句或语句块forfor循环语句头部典型格式循环语句头部典型格式for ( int counter = 0;
15、counter 10; counter+)for ( int counter = 0; counter 10; counter+) 控制变量初始值控制变量初始值 改变控制变量的值改变控制变量的值 计数初始化计数初始化 控制变量终止值控制变量终止值for for 关键字关键字 循环控制条件循环控制条件whilewhile循环语句循环语句whilewhile循环语句格式为:循环语句格式为:while (while (布尔表达式布尔表达式) ) 语句或语句块语句或语句块 i = 100 sum+=i; i+=2;truefalse练习:求练习:求1到到100的累加和的累加和do/whiledo/wh
16、ile循环语句循环语句先执行,后判定条件先执行,后判定条件即循规环体至少执行即循规环体至少执行1 1次次格式格式dodo 语句或语句块语句或语句块 while (while (布尔表达式布尔表达式););好的编程风格:总是以好的编程风格:总是以“ ”引导循环体,即使语引导循环体,即使语法上并不需要法上并不需要action(s)conditiontruefalse break break语句语句立即中断执行立即中断执行: : while, for, do/while while, for, do/while 或或 switchswitch continue continue语句语句跳过循环体中的剩余语句跳过循环体中的剩余语句: : while, for while, for 或或 do/whiledo/while;重新开始新一轮的循环重新开始新一轮的循环一般尽量不要用一般尽量不要用breakbreak与与continuecontinue语句语句switchswitch语句中大量语句中大量breakbreak语句语句可以增加可读性或简化程序时用可以增加可读性或简化程序时用breakbreak与与continuecontinue语语句句