我忘记了 C# 语句的语法,我什至不知道名字....
假设您有一个布尔值,将其称为已连接,并且我想根据连接状态设置一些文本。我知道有一个简单的“单行”语句,但我忘记了语法,而且我不知道语句类型的名称,所以我可以用谷歌搜索它。
这与我正在寻找的东西很接近。语法如下所示:
string title = ( connected : "[Not Connected]", "[Connected]");
谢谢!
您正在寻找条件运算符:
string title = connected ? "[Connected]" : "[Not Connected]";
它被称为条件/三元运算符
string title = connected ? "[Not Connected]": "[Connected]";
注意真正的条件首先出现,所以在你的例子中它实际上应该是
string title = connected ? "[Connected]": "[Not Connected]";
我认为您的意思是条件运算符:
// Sample changed from original code for sanity
string title = connected ? "[Connected]" : "[Not connected]";
它的专有名称是条件运算符,但您有时会在这里将其称为“三元运算符”。这只是意味着它具有三个操作数(与一元运算符和二元运算符相比) - 它根本没有描述它的作用,应该避免使用 IMO。使用它的正确名称,它描述了它的用途:评估一个条件,然后基于该条件评估另一个表达式。
有关行为等的详细信息,请参阅 C# 4 规范的第 7.14 节。
听起来您在谈论三元条件运算符。
string title = condition ? "on true" : "on false";
请注意,这不是许多人可能认为的“三元运算符”,三元只是意味着有 3 个操作数,您可以在 Wikipedia 上阅读更多内容。
在计算机科学中,三元运算符(有时被错误地称为三元运算符)是一个接受三个参数的运算符
输入条件运算符
var title = connected ? "Connected" : "Not Connected"
title= (connected == true) ? "[Connected]" : "[Not Connected]";
或者
title= (connected) ? "[Connected]" : "[Not Connected]";