一、Java中运算符可分为以下:
算术运算符(+ – * /)、关系运算符(< > ==)、逻辑运算符、位运算符、移位运算符以及条件运算符等
二、%的用法 求余数
public static void main(String[] args) {
System.out.println(10%3); //1
System.out.println(10%-3); //1
System.out.println(-10%3); //-1
System.out.println(-10%-3); //-1
System.out.println(11.5%2.0); //1.5
}
三、增量运算符
+=、-=、/=、%=;
public static void main(String[] args) {
short a = 1;
a = (short)(a + 1);
//效果相等
a += 1; //相当于帮a进行了一个强转
}
public static void main(String[] args) {
int a = 1;
int b = a++; //这里就是 b = a 然后a = a + 1; b = 1
//int b = ++a; 这里就是 a = a + 1 然后 b = a b = 2
System.out.println("a:"+a);
System.out.println("b:"+b);
}
四、关系运算符
public static void main(String[] args) {
/**
* 关系运算符
*/
int a = 1;
int b = 2;
System.out.println(a == b);
System.out.println(a < b);
System.out.println(a <= b);
System.out.println(a > b);
System.out.println(a >= b);
System.out.println(a != b);
//关系运算符的计算结果只有 true 或者 false
//黄色的代表idea给你的警告,但不是所有警告都是正确的,你得学会自己判断;
}
>>>: 无符号右移;
>> : 右移;
两者区别:都是正数时没区别,但是如果为负数,>>右移后还是负数,但>>>右移后为正数;
<< : 左移;
还有:>>>=,>>=,<<= 都是先移动再赋值的意思;
不存在无符号左移;
五、其他运算符
// ^ 异或运算符
相同的异或后==0
0和其他非0数字异或后==该非0数字
例:0 ^ 3 == 3
9 ^ 9 == 0