《02.2.Java基础-运算符、表达式》由会员分享,可在线阅读,更多相关《02.2.Java基础-运算符、表达式(15页珍藏版)》请在金锄头文库上搜索。
1、第二章 运算符、表达式,1.算术运算符与算术表达式(1)加减运算符:+,-。 例如:2+39, 908.98-23 等。(2)乘、除和取余运算符:*,/,%。 例如:2*39,908.98/23 等。2.自增,自减运算符: +,-。3.算术混合运算的精度 精度从“低”到“高”的排列顺序是: byte short int long float double,Java按照运算符两边操作元的最高精度保留结果的精度,算术运算符、自赠自减运算符,关系运算符、赋值运算符,赋值运算符与赋值表达式(1)赋值运算符:=(2)赋值表达式: = 例如: int a = 3; int b = a;表示将3赋值为a,再
2、将a的值赋值给b。,位运算符1.“按位与”运算符“&”,规则:全1则1,否则为0例如:a 00000000 00000000 00000000 00000111b & 10000001 10100101 11110011 10101011c 00000000 00000000 00000000 000000112.“按位或”运算符“|”,规则:全0则0,否则为13.“按位非”运算符“”,规则:遇1则0,遇0则14.“按位异或”运算符“”,规则:相同为0,不同为1,位运算符,异或加密算法,运行结果如下,逻辑运算符、短路或示例,设置x的初始值为1int x = 1;经过下列逻辑运算后(y=1)=0
3、) & (x=6)=6)X的值仍然是1。经过下列逻辑运算后(y=1)=1) & (x=6)=6)X的值变为6,短路与示例,逻辑运算符的逻辑运算,逻辑运算符与位运算符的区别:1.逻辑运算符只能针对boolean类型进行逻辑运算,而位运算还可以对数值进行逻辑运算。2.逻辑运算符有短路情况,即前面的表达式可以得到最终结果时,后面的表达式将不被执行。,二进制与十进制之间转换,计算机使用二进制数表示数值。需要将十进制数转化为二进制数进行存储和计算。公式:1.整数部分:除2取余2.小数部分:乘2取整例如:十进制数93转为二进制1100001,二进制转十进制,二进制转十进制采用幂加和方式,从小数点左侧第一位
4、为0次幂,小数点左侧第二位为1次幂,以此类推。当查看的位数为1时,则计算,当查看的位数为0时,则不计算。例如:01100001转化为十进制数该数值第0位、第6位和第7位的值为1,则最后的结果为26 + 25 + 20 = 64 + 32 + 1 = 97,补码表示法,补码是计算机用于规范计算的一种二进制表示方式,由于计算机使用数值的第一位来表示数据的正负,例如:00000011表示+3,而10000011表示-3,这些非0数值在逻辑上的表示都是没有问题的,这中表示方法称为源码表示法。但是用00000000表示+0,而10000000表示-0,则出现逻辑上的偏差,即:+0 不等于 -0。为了解决
5、这个问题,提出了补码表示法。 补码的计算公式(分正数和负数):1.正数:源码、反码和补码都相同。2.负数:补码 = 反码(符号位保持不变) + 1,注意:负数在计算补码的时候,在源码取反的过程中要保留符号位不变,其他位取反。例如:10001010取反11110101(第一个1不变),移位运算符,移位运算符有三种:1. 右移运算符:将二进制数据进行右移运算。2. 无符号右移运算符:无论正负,都在高位插入0。示例如下:,三目条件运算符,三目条件运算符是一个逻辑判断与赋值运算符的组合。语法如下: ? : 当逻辑表达式为真时,表达式1有效;当逻辑表达式为假时,表达式2有效。例如:int x = 3 5 ? 2 * 3 : 8;3 5 为逻辑表达式2 * 3 为表达式18 为表达式2最终x的值为8,因为逻辑表达式为假,所以讲表达式2的值8赋给变量x。,运算符的优先级,漫漫IT路,你需要过来人指点!,