C# 当两个管道(| |)相邻时,这意味着什么?
正在使用的一个例子是C# 当两个管道(| |)相邻时,这意味着什么?,c#,C#,正在使用的一个例子是 if (temp < 30 || temp > 90) { MessageBox.Show("Error"); } 两个管道| |在一起意味着什么?一个管道是一个逻辑OR运算符,它总是计算两个操作数 两个管道是短路逻辑OR运算符,它仅在第一个操作数为false时计算第二个操作数。如果第二个操作数是一个重函数,您不想对其进行不必要的求值,或者它可能引发异常,则这一点尤其有用,例如: if(myList == null || myList.Count == 0){
if (temp < 30 || temp > 90) { MessageBox.Show("Error"); }
两个管道| |在一起意味着什么?一个管道是一个逻辑OR运算符,它总是计算两个操作数 两个管道是短路逻辑OR运算符,它仅在第一个操作数为false时计算第二个操作数。如果第二个操作数是一个重函数,您不想对其进行不必要的求值,或者它可能引发异常,则这一点尤其有用,例如:
if(myList == null || myList.Count == 0){
//do something
}
在本例中,如果myList为null,则永远不会计算第二个操作数。如果改用一个管道,第二个操作数将被求值并引发异常,因为myList为null。C和许多其他语言中的管道[除非单个管道用作位逻辑运算符,如Java中的管道]是逻辑运算符或
双管| |是捷径或捷径。这意味着如果第一个条件为真,那么操作将自动退出,因为一个条件已经为真。因此,或必须是真的。因此,单个|意味着它将在求值之前首先检查所有条件,这比较慢而且通常没有用处
在您的示例中:
if (temp < 30 || temp > 90) { MessageBox.Show("Error"); }
温度<30:第一个条件
||:逻辑或
温度>90:第二种情况
这意味着,如果第一个条件或第二个条件为真,则显示错误。这意味着您尚未对@PUROTIX进行任何研究,您的评论应标记为已接受:P@Scootaloo欢迎来到SO社区!抱歉,评论中有很多讽刺,但大多数人都会尽力帮助你。只是这在编程中是一个相对简单的想法。为什么所有这些答案都被否决了?答案不错,是吗?