几个典型运算符之间的区别
1. i++
与 ++i
i++
(后缀递增运算符):
- 这被称为后缀递增运算符。它首先返回变量
i
的当前值,然后将i
的值增加 1。 - 通常用于循环计数器的递增。
++i
(前缀递增运算符):
- 这被称为前缀递增运算符。它首先将
i
的值增加 1,然后返回新的值。 - 通常用于确保变量的值在递增之前被使用。
区别:
i++
先返回当前值,然后递增。++i
先递增,然后返回新值。
示例:
int i = 5;
System.out.println(i++); // 输出 5,然后 i 变为 6
System.out.println(++i); // 输出 7,i 先增加 1
2. &
与 &&
&
(按位与运算符):
- 这是一个二元运算符,用于对两个整数的二进制位进行按位与操作。
- 它对两个操作数的每一位进行与操作,如果两个位都是 1,则结果位是 1,否则是 0。
&&
(逻辑与运算符):
- 这是一个逻辑运算符,用于比较两个布尔值。
- 如果两个操作数都为
true
,则结果为true
;否则为false
。 - 它是短路运算符,如果第一个操作数为
false
,则不会计算第二个操作数。
区别:
&
用于整数的按位操作,返回一个整数。&&
用于布尔值的逻辑操作,返回一个布尔值。&&
是短路运算符,而&
不是。
示例:
int a = 5, b = 3;
System.out.println(a & b); // 输出 1 (二进制 101 & 011)
boolean c = true;
boolean d = false;
System.out.println(c && d); // 输出 false
3. |
与 ||
|
(按位或运算符):
- 这是一个二元运算符,用于对两个整数的二进制位进行按位或操作。
- 它对两个操作数的每一位进行或操作,如果至少有一个位是 1,则结果位是 1。
||
(逻辑或运算符):
- 这是一个逻辑运算符,用于比较两个布尔值。
- 如果至少有一个操作数为
true
,则结果为true
;否则为false
。 - 它是短路运算符,如果第一个操作数为
true
,则不会计算第二个操作数。
区别:
|
用于整数的按位操作,返回一个整数。||
用于布尔值的逻辑操作,返回一个布尔值。||
是短路运算符,而|
不是。
示例:
int a = 5, b = 3;
System.out.println(a | b); // 输出 7 (二进制 111)
boolean c = true;
boolean d = false;
System.out.println(c || d); // 输出 true
4. >
与 >>
>
(大于运算符):
- 这是一个关系运算符,用于比较两个数值或字符。
- 如果左边的值大于右边的值,则返回
true
;否则返回false
。
>>
(右移位运算符):
- 这是一个二元运算符,用于将一个数的二进制位向右移动指定的位数。
- 如果是算术右移位(没有符号位),则左边用符号位填充;如果是逻辑右移位(有符号位),则左边用 0 填充。
区别:
>
用于数值或字符的比较。>>
用于数值的二进制位移动。
示例:
int a = 5;
int b = 3;
System.out.println(a > b); // 输出 true
int c = 5;
System.out.println(c >> 1); // 输出 2 (二进制 101 >> 1)
理解这些运算符的区别和联系对于编写正确的 Java 程序和进行有效的逻辑判断非常重要。*
标签:典型,区别,++,System,运算符,println,true,out From: https://www.cnblogs.com/wjw2003512/p/18338353