java如何使用&
使用 & 作为位运算符
在 Java 中,& 是位与运算符,用于对两个整数的二进制位进行逐位与运算。只有当两个对应位都为 1 时,结果位才为 1,否则为 0。

int a = 5; // 二进制: 0101
int b = 3; // 二进制: 0011
int result = a & b; // 结果为 1 (二进制: 0001)
System.out.println(result); // 输出: 1
使用 & 作为逻辑与运算符
& 也可以作为逻辑与运算符,用于布尔表达式。与 && 不同,& 会强制计算左右两边的表达式,即使左边为 false。

boolean x = false;
boolean y = true;
boolean result = x & y; // 结果为 false
System.out.println(result); // 输出: false
& 与 && 的区别
&是位与或逻辑与,总会计算两边表达式。&&是短路逻辑与,如果左边为false,右边不会计算。
boolean a = false;
boolean b = true;
// 使用 &,两边都会计算
boolean result1 = a & (b = false); // b 会被赋值为 false
System.out.println(b); // 输出: false
// 使用 &&,右边不会计算
boolean result2 = a && (b = true); // b 不会被赋值
System.out.println(b); // 输出: false
在条件语句中使用 &
& 可以用于条件判断,但通常推荐使用 && 以提高效率(除非需要强制计算两边表达式)。
int value = 10;
if (value > 5 & value < 15) {
System.out.println("Value is between 5 and 15");
}
注意事项
- 位运算
&只能用于整数类型(int,long,short,byte,char)。 - 逻辑
&只能用于布尔类型。 - 避免在不需要强制计算两边表达式时使用
&,优先使用&&。






