0

我想使用 2 个运算符的组合: && 和 || 使用 C# 的运算符。我有 5 个变量要确定是否满足这些条件。varRequestedDate varTotdayDate varExpectedDate Approval1 Approval2 这是我目前的情况,但想添加其他变量添加 OR 运算符:

if (varRequestedDate != ("&nbsp;") && varExpectedDate < varTotdayDate)

这是更新版本后我希望看到的伪代码:

(if varRequestedDate is not blank 
and varExpectedDate is less than varTotdayDate
and either Approved1 OR Approved2 = Yes)
send email()

我不知道该怎么做。谢谢

4

3 回答 3

7

您只需添加嵌套括号:

if (varRequestedDate != "&nbsp;" 
    && varExpectedDate < varTotdayDate
    && (Approved1 == "Yes" || Approved2 == "Yes")
)
    sendEmail();
于 2012-12-03T22:08:19.693 回答
2

为了可读性和表达性,我会将布尔值提取到有意义的命名变量中:

var isDateRequested = varRequestedDate != ("&nbsp;");
var isDateWithinRange = varExpectedDate < varTotdayDate;
var isApproved = Approved1 == "Yes" || Approved2 == "Yes";

if (isDateRequested && isDateWithinRange && isApproved)
{...}
于 2012-12-03T22:11:42.617 回答
1

您可以使用括号嵌套逻辑运算符(就像算术运算符一样)。否则,它们遵循从左到右的定义优先级。

if (
    varRequestedDate !=("&nbsp;") && 
    varExpectedDate < varTodayDate && 
    (Approved1==Yes||Approved2==yes))
于 2012-12-03T22:12:24.840 回答