和/或评估的捷径

Shortcut for and/or evaluation

提问人:Chris 提问时间:2/4/2022 最后编辑:Camilo TerevintoChris 更新时间:2/4/2022 访问量:79

问:

以下评估有捷径吗?一个我不需要两次指定值 a 的地方?

(a && b || a && c)

谢谢。:)

C# 布尔逻辑

评论

4赞 Camilo Terevinto 2/4/2022
(a && (b || c))?
2赞 Rand Random 2/4/2022
asp.net 如何相关?
1赞 Chris 2/4/2022
不好意思。我没有想清楚......与 ASP NET 无关。卡米洛写的就是我一直在寻找的。
1赞 Charlieface 2/4/2022
可能就是这样,也因为错过了(相当)明显的......我什至不确定这是一个特定于 C# 的问题,甚至是一个编程问题,它只是基本的布尔逻辑。虽然我没有投反对票

答:

3赞 Julian Silden Langlo 2/4/2022 #1

这应该对你有用:

(a && (b || c))
0赞 Rand Random 2/4/2022 #2

如果带牙套的病情对您来说不够清楚:

switch (a)
{
    case true when b || c:
        Console.WriteLine($"{a} | {b} | {c}");
        break;
    default:
        Console.WriteLine("Nope!");
        break;
}   

https://dotnetfiddle.net/8RCcCr

评论

3赞 MakePeaceGreatAgain 2/4/2022
OP 想要一条捷径,你发布了吗?
1赞 Rand Random 2/4/2022
One where I do not need to specify value a twice -> a仅指定一次:D
3赞 Trexx 2/4/2022
我们不要忘记可扩展性,如果我们的产品经理想要比较更多的价值怎么办?