资源描述:
《《Java的表达式》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java的表达式《JavaSE6全方位学习》第5章学习目标Java基本表达式的使用操作符的使用与优先级学习时间:3小时主要内容5.1算术运算5.2比较运算5.3逻辑运算5.4递加、递减运算5.5赋值运算5.6位运算5.7位移运算5.8优先级和结合性5.9本章总结运算符和表达式运算符:表示实施某种运算的符号表达式:用运算符将数据连接成有意义的式子表达式的核心是运算符Java中提供了八大类约30种运算符算术运算:();+,-;*,/,%;+,-比较运算:>,<,>=,<=;==,!=逻辑运算:!;&,^,
2、;&&,
3、
4、;递加、递减运算:++,--赋值运算:=;?=(?代表+,-,*,/
5、,%,&,
6、,^,>>,<<,>>>中任一个)位运算运算:~;&;^;
7、;位移运算运算:>>,<<,>>>其他运算:?:,instanceof,new对运算符应掌握内容功能(所表示的运算)运算对象的类型和个数运算结果的类型格式运算符优先级运算符结合性注意事项例:inta=10,b=5;a/(-4)+b×8%75.1算术运算功能:进行算术运算运算符:();+,-;*,/,%;+,-();+,-是单目运算符,*,/,%;+,-是双目运算符运算对象和运算结果都是数值类型(整型数,浮点数,字符型数)格式:[<数值型数据>]<算术运算符><数值型数据>上述运算符是按运算优先级的顺序排列除++
8、,--的结合性是从右到左外,其他运算符的结合性都是从左到右5.1算术运算注意事项运算符+还可用于字符串连接运算例如“abc”+”XYZ”结果为”abcXYZ”运算符%的运算对象还可是实数类型例如37.2%10结果为7.2练习一5/2值是?5.0/2值是?5%2值是?12.5%5值是?设bytex=7;则charch=‘B’+x类型是?charch=…初始值写法?22.512.5int型(char)(’B’+x);5.2比较运算功能:比较两个数的大小运算符:>,<,>=,<=;==,!=比较运算符都是双目运算符两个运算对象的数据类型须是相同或相互兼容运算结果类型总是逻辑型格式:<与
9、右侧兼容的数据><比较运算符><与左侧兼容的数据>>,<,>=,<= 运算优先级比==,!=高一级所有比较运算符的结合性都是从左到右注意事项:不能比较两个浮点数是否相等练习二上式相当于(1>2)==(3<4)false==truefalse表达式1>2==3<4的值是?5.3逻辑运算功能:进行逻辑运算运算符:!;&,^,
10、;&&,
11、
12、;!是单目运算符,&,^,
13、,&&,
14、
15、是双目运算符运算对象和运算结果的数据类型都是逻辑型格式:[<逻辑型数据>]<逻辑运算符><逻辑型数据>上述运算符是按运算优先级的顺序排列!的运算结合性是从右到左,&,^,
16、,&&,
17、
18、的运算结合性是从左到右&
19、&,
20、
21、要遵循逻辑运算的“短路运算规则”,&,^,
22、则不然5.3逻辑运算注意事项:运算符&,^,
23、的运算对象数据类型除了逻辑型外,还可以是整数类型(进行整数位运算)而运算符!,&&,
24、
25、的运算对象数据类型只有逻辑型,没有整数类型。且&&,
26、
27、要遵循逻辑运算的“短路运算规则”设inta=10,b=5,则对a++>10&&--b<5运算后,变量a,b的值是?上式相当于(a++>10)&&(--b<5)∵(a++>10)10>10false∴表达式(a++>10)&&(--b<5)值总是false按“短路运算规则”,不再计算(--b<5)∴经过运算后,a的值是11,b的值仍是5练习三
28、设inta=10,b=5,则对a++>10
29、
30、--b<5运算后,变量a,b的值是?上式相当于(a++>10)
31、
32、(--b<5)∵(a++>10)10>10false∴要继续求(--b<5)的值,(--b<5)4<5∴经过运算后,a的值是11,b的值是4练习四5.4递加、递减运算功能:进行算术运算运算符:++,--++,--是双目运算符运算对象和运算结果的数据类型都是数值型格式:<递加、递减运算符><数值型数据>或<数值型数据><递加、递减运算符>前递(左递)运算符++,--优先级高于后递(右递)运算符++,--前递(左递)运算符的运算结合性是从左到右,后递(右递)运算符++,
33、--的运算结合性是从右到左5.4递加、递减运算递加运算种类:左递加:先将变量值加一,再求表达式的值右递加:先求表达式的值,再将变量值加一例:设intx=5,y;左递加y=++x等价x=x+1//表达式++x的值是?y=x//变量值x的值是?6656System.out.println(“x=”+x+”y=”+y);x=6y=5右递加y=x++等价y=x//变量值x的值是?x=x+1//表达式x++的值是?练习五递减运算种类:左递减:先将变量值减一,再求表达式的值右递减