揭秘 | 之间的区别和 || (或)运算符
程序员通常使用|| (双管道)运算符用于 C# 和 PHP 等各种语言中的 OR 表达式。然而,有些人可能偶尔会遇到单管道(|)的使用。理解它们的区别至关重要。
短路行为
就像它们的对应对象 & 和 && 一样,双管道运算符的行为类似于短路运算符。它按顺序评估条件,仅在当前条件为 false 时才继续执行下一个条件。
例如,如果条件 1 为 true,以下代码将仅检查条件 2 和 3:
if (condition1 || condition2 || condition3)
相比之下,单管道运算符不会短路。无论之前的结果如何,它都会评估所有条件:
if (condition1 | condition2 | condition3)
如果条件评估的计算成本很高,这可能会带来性能优势。
潜在的警告
但是,使用单管时需要考虑一些注意事项运算符:
if (class != null || class.someVar < 20)
使用 ||这里可能不会像 || 中那样抛出 NullReferenceException情况,但这仍然是一个重要的考虑因素。
按位运算
除了逻辑表达式之外,|和 & 还可以执行按位运算,在位级别操作数字的二进制表示。
以上是编程中'|”和'||”(OR)运算符有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!