C# 中的 | 和 || 或运算符有什么区别?
csharpserver side programmingprogramming更新于 2025/9/29 19:22:17
| 运算符
| 运算符计算其操作数的逻辑或。如果 x 或 y 计算结果为真,则 x | y 的结果为真。否则,结果为假。
即使左侧操作数计算结果为真,| 运算符也会计算两个操作数,因此无论右侧操作数的值如何,运算结果都为真。
|| 运算符
条件逻辑或运算符 ||,也称为"短路"逻辑或运算符,计算其操作数的逻辑或。
如果 x 或 y 计算结果为真,则 x || y 的结果为真。否则,结果为假。如果 x 计算结果为真,则不计算 y。
示例
class Program {
static void Main(string[] args){
int a = 4;
int b = 3;
int c = 0;
c = a | b;
Console.WriteLine("Line 1 - Value of c is {0}", c);
Console.ReadLine();
}
}
输出
Value of c is 7 Here the values are converted to binary 4−−100 3−−011 Output 7 −−111
示例 2
static void Main(string[] args){
int a = 4;
int b = 3;
int c = 7;
if (a > b || b > c){
System.Console.WriteLine("a is largest");
} else {
System.Console.WriteLine("a is not largest");
}
Console.ReadLine();
}
输出
a is largest
在上面的例子中,其中一个条件返回 true,因此它从不检查下一个条件。

