1、Java中的语句有很多形式,其中表达式就是其中一种形式。
表达式有操作数和运算符组成,其中操作数可以试试变量,也可以是常量和方法,int z= z + 100;
2、赋值运算符 “=”
3、一元运算符 “+”正号、“-”负号、“!”取反
4、算术运算符 加、减、乘、除、取模
5、关系运算符 (比较运算符) 大于、小于、大于等于、小于等于、等于、不等于,其运算结果是boolean型的值,其值不是true就是false
6、自增,自减运算符 “++”“--” a++,操作数在前,运算符在后,执行先计算再增或自减的操作;--b,操作数在后,运算符在前,执行先自增或自减的操作,再参与运算。
7、逻辑运算符 &、&&、|、|| 运算符两边的表达式或者变量都是boolean值,其运算结果也是boolean值,逻辑运算符常用于多条件判断功能
&&,表示短路与,如果第一个条件为false,则后面的条件不再判断,其结果为false;
||,表示短路或,如果第一个条件为true,则后面的结果也不再判断,其结果为true。
8、括号运算符 (),提高括号中表达式的优先级。
9、位运算符
逻辑运算符 描述
& 按位与
| 按位或
^ 异或(相同为0,不同为1)
~ 取反
<< 左位移
>> 右位移
>>> 无符号右移
如果要进行位操作,要先将十进制数转换成二进制数,除2的形式,求余数
反码,除符号位全部取反。负数的二进制数据以补码的的形式存在。补码=反码+1
在java中存在左移和右移操作,
左移,将运算数的二进制码整体左移指定为数,左移之后的空位使用0填充;
右移,将运算数的二进制码整体右移指定为数,右移之后的空位,如果是正数使用0填充,如果是负数,使用1填充
无符号的右移操作>>>,右移指定位数之后,空出来的位使用0填充
10、运算符的优先级 常使用括号改变表达式中运算符的优先级
11、常用的几种简洁运算符 如 += 表示表达式两边的值进行相加,然后复制给表达式左边的变量 a+=b 等价于 a=a+b
12、表达式类型的转换,当java发现程序的表达式中有类型不相符的情况时,会依据下列的规则处理类型的转换
|- 占用字节较少的类型转换成占用字节较多的类型
|- 字符类型会转换成int类型
|- int类型会转换成float类型
|- 表达式中若某个操作数的类型是double,则另一个操作数也会转换成double类型
|- 布尔类型不能转换成其他类型
注意:只要这个表达式中存在double类型的操作数,其最后结果一定是double类型
|
|