运算符表达式.ppt

上传人:s****8 文档编号:77416185 上传时间:2023-03-14 格式:PPT 页数:25 大小:266KB
返回 下载 相关 举报
运算符表达式.ppt_第1页
第1页 / 共25页
运算符表达式.ppt_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《运算符表达式.ppt》由会员分享,可在线阅读,更多相关《运算符表达式.ppt(25页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、本课内容Java运算符表达式运算符算术运算符:+,*,/,%,+,关系运算符:,=,赋值运算符:=扩展赋值运算符:+=,=,*=,/=字符串连接运算符:+算术运算符注意事项:一个数除以零,若这个数是整型,则会产生一个异常(程序运行时中途退出,编译不会产生错误),若这个数是浮点型,则产生一个无穷大的值。对于取模操作与别的程序语言有所区别,其操作数可以是浮点型。算术运算符案例1public class Test4_1 public static void main(String args)System.out.println(17.3mod0=+17.3%0);System.out.println

2、(17mod4=+17%4);System.out.println(17.3mod0=+17.3%0);System.out.println(17/0=+17/0);算术运算符案例2案例2:求一个四位整型数,计算其个、十、百、位上的数之和。如1789个、十、百、位上的数之和=1+7+8+9=25.算术运算符案例2public class Test4_2 public static void main(String args)int i,a,b,c,d;i=1789;a=i/1000;b=i%1000/100;c=i%100/10;d=i%10;System.out.println(你输入的整数

3、是+i+其千百十个位上的数之和为+(a+b+c+d);自增、自减运算符自增、自减运算符+、-案例案例3 3 public class Test4_3public class Test4_3 public static void public static void main(Stringmain(String argsargs)intint i=9,a,b;i=9,a,b;b=i+;/b=i+;/先赋值再自加先赋值再自加 a=+i;/a=+i;/先自加再赋值先自加再赋值 System.out.println(bSystem.out.println(b=+b);=+b);System.out.p

4、rintln(iSystem.out.println(i=+i);=+i);System.out.println(aSystem.out.println(a=+a);=+a);逻辑运算符(1)逻辑运算符功能!-逻辑非&-逻辑与|-逻辑或 -逻辑异或&-短路与|-短路或逻辑运算符功能说明:ab!aa&ba|baba&ba|btruetrue truefalsefalsetruefalsefalse逻辑运算符(1)逻辑运算符功能!-逻辑非&-逻辑与|-逻辑或 -逻辑异或&-短路与|-短路或逻辑运算符功能说明:ab!aa&ba|baba&ba|btruetrue falsetruetruefalse

5、truetruetruefalsefalsefalsetruetruefalsetruefalsetruetruefalsetruetruefalsetruefalsefalsetruefalsefalsefalsefalsefalse逻辑运算符案例4public class Test4_4public static void main(String args)boolean a,b,c;a=true;b=false;c=a&b;System.out.println(c);c=a|b;System.out.println(c);c=a b;System.out.println(c);c=!a;

6、System.out.println(c);c=a&b;System.out.println(c);c=a|b;System.out.println(c);逻辑运算符(2)短路逻辑运算符应用&-第一个操作数为假则不判断第二个操作数|-第一个操作数为真则不判断第二个操作数 MyDate d;if(d!=null)&(d.day 31)/do something with dif(i 31)System.out.println(非法赋值);位运算符位运算符功能 -取反&-按位与|-按位或 -按位异或位运算符功能说明:010011111011000001101101&0100100111001011

7、01101101|111011111100101101101101 1010011011001011位运算符位运算符案例案例5 5分析下面程序的输出结果并验证:public class Test4_5public static void main(String args)int a=10;int i=a;System.out.println(i=+i);System.out.println(128|3);System.out.println(67 3);System.out.println(67&3);移位运算符(1)左移ab;将二进制形式的a逐位右移b位,最高位空出的b位补原来的符号位;无符

8、号右移ab;将二进制形式的a逐位右移b位,最高位空出的b位补0。移位运算符(2)移位运算符性质适用数据类型:byte、short、char、int、long,对低于int型的操作数将先自动转换为int型再移位 对于int型整数移位ab,系统先将b对32取模,得到的结果才是真正移位的位数对于long型整数移位时ab,则是先将移位位数b对64取模通过测试得出什么结论:左移一位相当乘以2,左移两位相当相当乘以4.以此类推。移位运算符(3)移位运算符应用举例2227=22273=22273=-2227=-22273=-22273=00000000 00000000 00001000 10110011

9、00000000 00000000 01000101 10011000 00000000 00000000 00000001 0001011000000000 00000000 00000001 00010110 11111111 11111111 11110111 0100110111111111 11111111 10111010 01101000 11111111 11111111 11111110 1110100100011111 11111111 11111110 11101001 位运算符位运算符案例案例6 6public class Test4_6public static vo

10、id main(String args)int a=10int j=a3;int k=a32;System.out.println(j=+j);System.out.println(k=+k);System.out.println(m=+m);位运算符位运算符案例案例7 7public class Test4_7public static void main(String args)int a=-5;/(是5的反码+1)int j=a3;int k=a2;System.out.println(j=+j);System.out.println(k=+k);System.out.println(m

11、=+m);赋值运算符(1)赋值运算符=当=两侧的数据类型不一致时,可以适用默认类型转换或强制类型转换原则进行处理 long l=100;int i=(int)l;特例:可以将整型常量直接赋值给byte,short,char等类型变量,而不需要进行强制类型转换,只要不超出其表数范围 byte b=12;/合法 byte b=4096;/非法基本数据类型自动转换public class Test public static void main(String args)int i=(int)Math.pow(2,16);short s=-32768;/-3276832767char c=65535;

12、/065535 2 的16次方=65536System.out.println(c);基本数据类型转换等级:byte-short,char-int-long float-doubleint-floatlong-double赋值运算符(2)扩展赋值运算符运算符 用法举例 等效的表达式+=a+=b a=a+b-=a-=b a=a-b*=a*=b a=a*b/=a/=b a=a/b%=a%=b a=a%b&=a&=b a=a&b|=a|=b a=a|b=a=b a=ab=a=b a=a=a=b a=ab=a=b a=ab字符串连接运算符+除用于算术加法运算外,还可用于对字符串进行连接操作int i=

13、300+5;String s=hello,+world!;+运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接int i=300+5;String s=“hello,”+(i+12)+号;System.out.println(s);/输出:hello,305号表达式表达式是符合一定语法规则的运算符和操作数的序列 a5.0+a(a-b)*c-4i30&i%10!=0 表达式的类型和值对表达式中操作数进行运算得到的结果称为表达式的值 表达式的值的数据类型即为表达式的类型 表达式的运算顺序首先应按照运算符的优先级从高到低的顺序进行 优先级相

14、同的运算符按照事先约定的结合方向进行三目运算符三目条件运算符,语法格式:x?y:z其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算的结果为表达式y的值,否则整个运算结果为表达式z的值。举例:int score=50;int result=x 60?60:x;String type=score 60?不及格:及格;运算符优先级Separator.();,AssociativeOperatorsR to L+-!(data type)L to R*/%L to R+-L to R L to R =instanceofL to R=!=L to R&L to RL to R|L to R&L to R|R to L?:R to L=*=/=%=+=-=&=|=

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

当前位置:首页 > 技术资料 > 施工组织

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com