C#语句(选择?)

时间:2012-08-13 12:46:21

标签: c# syntax

我忘记了C#语句的语法,我甚至不知道名字......

假设你有一个布尔值,调用它连接,我想根据连接状态设置一些文本。我知道有一个简单的“单线”声明,但我忘了语法,我不知道声明类型的名称,所以我可以谷歌搜索它。

这里有一些接近我正在寻找的东西。语法如下所示:

string title = ( connected : "[Not Connected]", "[Connected]");

谢谢!

6 个答案:

答案 0 :(得分:10)

您正在寻找conditional operator

string title = connected ? "[Connected]" : "[Not Connected]";

答案 1 :(得分:5)

它被称为Conditional/ternary operator

string title = connected ? "[Not Connected]": "[Connected]";

注意真实情况首先出现,所以在你的例子中它应该是

string title = connected ? "[Connected]": "[Not Connected]";

答案 2 :(得分:5)

我认为你的意思是conditional operator

// Sample changed from original code for sanity
string title = connected ? "[Connected]" : "[Not connected]";

它的正确名称是条件运算符,但有时候你会把它称为"三元运算符"。那个只是意味着它有三个操作数(与一元运算符和二元运算符相比) - 它根本没有描述做什么,应该避免使用IMO。使用其正确的名称,该名称描述了它的用途:评估条件,然后根据该条件评估另一个表达式。

有关行为等的详细信息,请参阅C#4规范的第7.14节。

答案 3 :(得分:2)

听起来你在谈论三元 - conditional operator

string title = condition ? "on true" : "on false";

请注意,这不是许多人可能认为的“三元运算符”,三元只是意味着有3个操作数,你可以read more on Wikipedia

  

在计算机科学中,三元运算符(有时被错误地称为第三运算符)是一个带三个参数的运算符

答案 4 :(得分:0)

输入conditional operator

var title = connected ?  "Connected" : "Not Connected"

答案 5 :(得分:0)

title= (connected == true) ? "[Connected]" : "[Not Connected]";

title= (connected) ? "[Connected]" : "[Not Connected]";