原文:Java Operator – &, && (AND) || (OR) Logical Operators,作者:Ihechikara Vincent Abba
我们在大多数编程语言中使用运算符来对变量执行操作。
它们分为各种类别,如算术运算符、赋值运算符、比较运算符、逻辑运算符等。
在本文中,我们将讨论按位与 AND 运算符,以及 AND(&&
)和 OR(||
)逻辑运算符。
如何使用按位与 AND
运算符
符号 &
表示按位与 AND 运算符。它评估给定数字的二进制值。这些数字的二进制结果将转换为十进制返回给我们。
当 &
运算符开始操作时,它将从左侧开始计算两个数字中字符的值。
让我们看一个例子来帮助你更好地理解:
System.out.println(10 & 12);
// returns 8
让我们分解一下。
10 的二进制值是 1010。
12 的二进制值是 1100。
在我们开始操作之前,你应该记住以下几点:
- 1 and 0 => 0
- 0 and 1 => 0
- 1 and 1 => 1
- 0 and 0 => 0
我们来操作一下。
10 的第一个字符是 1,而 12 的第一个字符也是 1,所以:
1 and 1 = 1
我们继续看第二个字符——10 的第二个字符是 0,12 的第二个字符是 1:
1 and 0 = 0
对于第三个字符——10 的第三个字符是 1,12 的第三个字符是 0:
1 and 0 = 0
对于第四个字符——10 的第四个字符是 0,12 的第四个字符是 0:
现在让我们组合所有返回的字符,结果是 1000。
二进制值 1000 在十进制中是 8,这就是我们的操作返回 8 的原因。
如何使用逻辑 AND
运算符
请注意,我们使用逻辑运算符来评估条件。它们根据给定的条件返回 true
或 false
。
符号 &&
表示 AND 运算符。它评估两个语句/条件,并且仅当两个语句/条件都为 true
时才返回 true
。
语法如下所示:
statment1/condition1 && statemnt2/condition2
正如你在上面看到的,有两个语句/条件由运算符分隔。运算符评估两个语句/条件的值并给我们一个结果——true
或 false
。
这是一个例子:
System.out.println((10 > 2) && (8 > 4));
//true
该操作将返回 true
,因为两个条件都为真——10 大于 2,且 8 大于 4。如果其中任何一个条件的逻辑不正确,那么我们将得到 false
。
为了更好地理解 &&
运算符,你应该知道两个条件都必须为 true
才能获得结果是 true
。
这是另一个返回 false
的示例:
System.out.println((2 > 10) && (8 > 4));
// false
在这里,2 不大于 10,但 8 大于 4——所以我们得到 false
。这是因为其中一个条件不成立。
- 如果两个条件都为
true
=>true
- 如果两个条件之一为
false
=>false
- 如果两个条件都为
false
=>false
如何使用逻辑 OR
运算符
我们使用符号 ||
表示 OR 运算符。只有当两个条件都为 false
时,此运算符才会返回 false
。这意味着如果两个条件都为 true
,将返回 true
,如果两个条件之一为 true
,也会返回 true
。
语法如下:
statment1/condition1 || statemnt2/condition2
让我们看几个例子。
System.out.println((6 < 1) || (4 > 2));
// true
这将返回 true
,因为其中一个条件为 true
。
- 如果两个条件都为
true
=>true
- 如果条件之一为
true
=>true
- 如果两个条件都为
false
=>false
总结
在本文中,我们学习了如何在 Java 中使用按位 &
运算符,以及如何执行操作来给我们一个结果。
我们还学习了如何在 Java 中使用 &&
和 ||
逻辑运算符。我们根据操作中涉及的条件了解了每个操作返回的值。
祝你编程愉快!