这里是JAVA中所有的运算符
算术运算符 | 二元运算符 | +、-、*、/、% | |
一元运算符 | ++、-- | ||
赋值运算符 | = | ||
扩展运算符 | +=、-=、*=、/= | ||
关系运算符 | ==、!=、>、<、>=、<=、instanceof | ||
逻辑运算符 | &&、||、!、^ | ||
位运算符 | >>、<<、>>>、&、|、^ 、 ~0 | ||
条件运算符 | ?: | ||
字符串连接符 | + |
我们依次介绍以上运算符和需要注意的点
算术运算符
+、-、*、/、%
这几个都是数学运算的运算符
有以下几个注意点
1. /:除法左右数值如果都为整型,则最终得到的也是整型,10/3 = 3;(根据这个特性可以解决一些题目,之后文章讲解)若是想要得到小数,除数与被除数起码有一个为浮点型,5.0/2 = 2.5;
2. %:这个运算符是计算余数的运算符,10%3 = 1;
++、--
这里注意++a和a++,++在前先++,后进行运算,++在后,先运算,再++。--也一样。
扩展运算符
+=、-=、*=、/=
这些运算符其实是一种缩写
n+= 1; n=n+1;
其他以此类推
关系运算符
==、!=、>、<、>=、<=、instanceof
= 是赋值运算符,==是用来判断前后是否相等的运算符,一般用在 if(a==1)语句
!=是不等于的意思
逻辑运算符
&&、||、!、^
&&一假即假,||一真即真
布尔表达式1&&布尔表达式2,如果1为假,则不会执行2。
^ 异或,相同为1,不同为0
! 结果取反
位运算符
>>、<<、>>>、&、|、^ 、 ~
>> 右移一位,在左侧第一位补0,相当于除以2
<< 左移移一位,在右侧第一位补0,相当于乘以2
无符号右移 >>>
-1 1111 1111
向右移动一位变为 0111 111
结果变为一个很大的数
~ 按位取反
条件运算符
?: 相当于一个判断语句
判断条件真假,真就返回表达式1,假就返回表达式2