Java 的运算符分为四类,分别是算术运算符、赋值运算符、比较运算符和逻辑运算符
加(+)减(-)乘(*)除(/),与数学中的用法基本一致。但是有两点注意事项:
对于整数来说,除法是进行“整除”,只看商,不看余数。
一旦有浮点数参与运算,那么结果就是浮点数。
如果对于整数的除法,希望得到余数而不是商,那么可以使用取余运算(%)。
注意,只有对整数使用取余运算,才有余数的数学意义。
注意:进行除法运算时,若两个操作数是整型的,结果也会是整型的,舍弃掉小数部分;如果有一个数是浮点数,结果将自动转型为浮点型。进行取余运算时,若两个操作数是整型的,结果也会是整型的,如果有一个数是浮点数,结果将自动转型为浮点型
如果将加号(+)用于字符串,那么将不再是数学运算,而是字符串连接。
任何数据类型与字符串进行连接,结果都将是字符串类型。
自增运算符 ++在原有的基础上,累加一个数字1
自减运算符 --在原有的基础上,累减一个数字1
使用格式:
前++:在变量的名称之前,写上++符号。例如:++num
后++:在变量的名称之后,写上++符号。例如:num++
前后++的区别:
在单独使用的时候,前++和后++没有任何区别。
在混合使用的时候,前++和后++存在【重大区别】:
a) 如果是【前++】,那么变量立刻马上+1,然后拿着结果进行使用。【先加后用】
b) 如果是【后++】,那么首先使用变量当前本来的数值,然后变量再+1。【先用后加】
注意:自增自减运算符只能用于变量,不能用于常量。
等号(=),代表将右侧的数据交给左侧的变量。
a +=3 相当于 a = a + 3
b -=4 相当于 b = b - 4
c *=5 相当于 c = c * 5
d/= 6 相当于 d = d / 6
e %=7 相当于 e = e % 7
注意:赋值运算符左侧必须是变量,不能是常量。
用于比较两个数据的关系,运算结果一定是boolean型数据。
大于: >
小于: <
大于等于: >=
小于等于: <=
等于: ==
不等于: !=
注意:两个等号连写,才是数学中相等的含义。
与(并且) &全都是true才是true;否则是false。
或(或者) |有一个true就是true;全都false才是false。
亦或 ^相同就是false;不同就是true。
非(取反) !本来是true变成false;本来是false变成true。
短路与 &&
短路或 ||
短语与“&&”从左到右一次判断,遇到false则停止判断,得出结果未false;逻辑与“&”从左到右一次判断,直至结束。短语或“||”从左到右一次判断,遇到true则停止判断,得出结果未true;逻辑或“|”从左到右一次判断,直至结束。简单点说就是,如果第一个条件可以确定结果,则后面的条件就不在判断,这样能够提高代码执行的效率。