1.算数运算符
①.基本四则运算符:+,-,*,/
int a=10; int b=20; System.out.println(a+b); System.out.println(a-b); System.out.println(a*b); System.out.println(a/b);
都是二元运算符,使用时必须要有左右两个操作数
int / int 结果还是int类型,而且会向下取整
在上面中除法运算比较特殊,他会舍弃小数部分,例如上面的计算结果会是0;
如果要保留小数可以用a.0/b;
2.增量运算符(+=,-=,*=,/=,%=)
a=a+3可以化简为a+=3;其他类似。
3.自增/自减运算符(++,--)
int a = 1;
a++; // 后置++ 表示给a的值加1,此时a的值为2
System.out.println(a++); // 注意:后置++是先使用变量原来值,表示式结束时给变量+1,因此输出2
System.out.println(a); // 输出3
++a; // 前置++ 表示给a的值加1
System.out.println(++a); // 注意:前置++是先给变量+1,然后使用变量中的值,因此输出5
4.关系运算符(==,!=,<,>,<=,>=)
他的计算结果是true/false,不能连写。
5.逻辑运算符(&&,||,!)
运算结果同上述一样都是boolean类型。
逻辑与&&

逻辑或||

逻辑非!

5.1 短路求值
eg:
System.out.println(10>20&&10/0==0); System.out.println(10<20&&10/0==0);
本身10不能/0,但是对于&&来说,10>20就是错的,不会执行后面的。
对于||来说,10<20是对的,也不会执行后面的。
6.位运算符(&,|,~,^)
6.1按位与&:如果俩个数的二进制位都是1,则结果为1,否则为0.
全一为一。

6.2按位或|:如果两个二进制位都是 0, 则结果为 0, 否则结果为 1.
有一为一。

6.3按位取反~:如果该位为 0 则转为 1, 如果该位为 1 则转为 0。
int a=10;
System.out.println(~a);//结果为-11
6.4按位异或^:如果两个数字的二进制位相同, 则结果为 0, 相异则结果为 1.
如果俩个数相同,结果为0;
7.移位运算符(<<,>>,>>>)
左移:最左侧位不要了, 最右侧补 0。
右移:最右侧位不要了, 最左侧补符号位(正数补0,负数补1)。
无符号右移>>>:最右侧位不要了, 最左侧补0。
注意:
1. 左移 1 位, 相当于原数字 * 2. 左移 N 位, 相当于原数字 * 2 的N次方.
2. 右移 1 位, 相当于原数字 / 2. 右移 N 位, 相当于原数字 / 2 的N次方.
3. 由于计算机计算移位效率高于计算乘除, 当某个代码正好乘除 2 的N次方的时候可以用移位运算代替.
4. 移动负数位或者移位位数过大都没有意义
7.条件运算符:
三目运算符:表达式1 ? 表达式2 : 表达式3
当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值;
当 表达式1 的值为 false 时, 整个表达式的值为 表达式3 的值.
eg:int a=10>20?10:20;//结果为20.
注意:
1. 表达式2和表达式3的结果要是同类型的,除非能发生类型隐式类型转换。
2. 表达式不能单独存在,其产生的结果必须要被使用。
Java编程基础:算数、增量、关系、逻辑及位运算符详解,
本文详细介绍了Java编程中的算数运算符(包括基本四则运算、增量运算符、自增自减、关系运算、逻辑运算、位运算和移位运算),以及条件运算符(三目运算)的概念、用法和注意事项。重点强调了运算符的使用规则和常见应用场景。
1387

被折叠的 条评论
为什么被折叠?



