算术运算符
前缀++、--与后缀++、--的区别:
++i(前缀++)在使用i之前,使i的值加1i++(后缀++)在使用i之后,使i的值加1如:i=0;j=++i+10;执行后,i的值为1,j的值为11。i=0;j=i+++10;执行后,i的值为1,j的值为10。--i(前缀--)在使用i之前,使i的值减1;i--(后缀--)在使用i之后,使i的值减1。
9
算术运算符
Java对加运算符进行了扩展,Java对加运算符进行了扩展,使它能够进行字符串的对加运算符进行了扩展连接运算。连接运算。如abc”+defdef”,得到字符串“abcdef”。“abc+“def,得到字符串“abcdef。
10
关系运算符
关系运算符用来比较两个值,返回布尔类值true或关系运算符用来比较两个值,返回布尔类值true或truefalse。关系运算符都是二元运算符。false。关系运算符都是二元运算符。关系运算符有:关系运算符有:==!=<>>=<=instanceof(判断对象是否是特定类型的实例判断对象是否是特定类型的实例)instanceof(判断对象是否是特定类型的实例)例如:例如:
若Stringstr=“hello”;strinstanceofString则表达式的值为真
11
逻辑操作符
逻辑操作符&;,|与位操作符&;,|相同的,
系统根据操作数判定是何种运算符。逻辑操作符&;、|、&;&;、||功能相同
&;,|--称为不短路与、或;&;&;,||--称为短路与、或。
12
逻辑运算符
13
位运算符
在Java语言中,位运算符有按位与运算符(&;)、Java语言中,位运算符有按位与运算符(语言中按位或运算符()、按位异或运算符按位异或运算符()、按位按位或运算符(|)、按位异或运算符(^)、按位取反运算符()、左移位运算符<<)左移位运算符(取反运算符(~)、左移位运算符(<<)和右移位运算符(,运算符(>>,>>>)。
14
按位与运算(&;)
参与运算的两个值,如果两个相应位都为1,则该参与运算的两个值,如果两个相应位都为1位的结果为1否则为0位的结果为1,否则为0。即:0&;0=0,0&;1=0,1&;0=0,1&;1=1,,,如:
10010101&;01010101的结果为00010101
15
按位或运算(|)
参与运算的两个值,如果两个相应位都是0,则该参与运算的两个值,如果两个相应位都是0位结果为0否则为1位结果为0,否则为1。即:0|0=0,0|1=1,1|0=1,1|1=1,,,
16
按位异或运算(^)
参与运算的两个值,如果两个相应位的某一个是1,参与运算的两个值,如果两个相应位的某一个是,另一个是0,那么按位异或()在该位的结果为1。另一个是,那么按位异或(^)在该位的结果为。否则为0。否则为。0^0=0,0^1=1,1^0=1,即:0^0=0,0^1=1,1^0=1,1^1=0
17
按位取反运算()按位取反运算(~)
按位取反运算()属于一元运算符,按位取反运算(~)属于一元运算符,它只对一个自变量进行操作。自变量进行操作。按位取反的结果是操作数各位取原来相反的值。原来相反的值。~0=1,即:~0=1,~1=0如:如果i的二进制表示为01001101~i的值为10110010则:
18
左移位运算符(<<)
运算符<<执行一个左移位。作左移位运算时,运算符执行一个左移位。作左移位运算时,右边执行一个左移位的空位补0。在不产生溢出的情况下,数据左移1位的空位补。在不产生溢出的情况下,数据左移位相当于乘以2。相当于乘以。例如:例如:
inta=16,b;b=a<<1;的值为32则b的值为的值为inta=-16,b;b=a<<1;则b的值为的值为-32的值为
19
右移位运算符()右移位运算符(>>)
运算符>>执行一个右移位操作(带符号)运算符执行一个右移位操作(带符号)执行一个右移位操作例如:例如: