在c#中,什么意思是“<?:”?

时间:2011-10-25 10:51:20

标签: c# return-value

在c#中是什么意思< ? :在这个字符串中?

return (a < b ? c: "text") + " ";

15 个答案:

答案 0 :(得分:6)

It is a ternary operator.

condition ? truePart : falsePart

这意味着如果a小于b,则返回c,否则返回"text"。在返回之前,这两个值都会附加" "

哦,但请不要在自己的代码中使用变量名abc:)

答案 1 :(得分:2)

? :conditional operator。如果第一个参数为true,则计算并返回第二个参数,否则它将计算并返回第三个参数。

您的代码大致相当于:

if (a < b)
{
    return c + " ";
}
else
{
    return "text" + " ";
}

答案 2 :(得分:2)

这里a与b进行比较,并被评估为布尔值,

所以如果&lt; b为真,则返回c

如果它的计算结果为false,则返回文本。

在任何一种情况下,你最后都会返回一个空格

详情阅读Conditional Operators以及Relational Operators

答案 3 :(得分:1)

如果a小于(&lt;)b那么(?)return c否则(:) return "text"

基本上没有< ? :运算符,您会看到两个独立的运算符“<”和“?:”运算符,它们是三元运算符,因此需要三个输入(在这个命令):

1)一个布尔表达式(在这种情况下是<比较)

2)当1)为真时返回什么

3)当1)为假时返回什么

答案 4 :(得分:1)

表示如果a小于b,则返回c,否则返回"text",然后在两种情况下都将" "添加到结尾。

MSDN doc:http://msdn.microsoft.com/en-us/library/ty67wk28(v=VS.100).aspx

答案 5 :(得分:1)

它是一个三元运算符,基本上是“if-then-else”的缩写形式......以上将是:

if (a < b)
{
   return c + " ";
}
else
{
   return "text ";
}

有关参考,请参阅http://msdn.microsoft.com/en-us/library/ty67wk28%28v=VS.100%29.aspx

答案 6 :(得分:1)

这是条件运算符。

与此相同:

if (a < b)
   return "c" + " ";
else 
   return "text" + " ";

答案 7 :(得分:1)

如果是其他条件

,这基本上是一种简短的写作方式
if a is less then b
    then return c + " ";
otherwise 
    return "text" + " ";

答案 8 :(得分:1)

这是一个使用三元运算符的if语句。您可以在http://msdn.microsoft.com/en-us/library/ty67wk28(v=vs.80).aspx

了解更多相关信息

答案 9 :(得分:1)

它是conditional operator

condition ? first_expression : second_expression;

在您的情况下,conditiona < b,因此转换为

string retVal;
if (a < b)
{
    retVal = c;
}
else
{
    retVal = "text";
}

return retVal + " ";

答案 10 :(得分:1)

它被称为三元运算符 docs 。它是

的缩写
var str = "";
if( a < b)
  str = c;
else
  str = "text"
str += " ";
return str;

答案 11 :(得分:1)

这是 a 三元操作(请参阅http://en.wikipedia.org/wiki/Ternary_operation)。基本上,评估左侧的表达式。如果计算结果为true,则结果为:左侧的表达式。如果它是假的,那就是之后的那个。

在您的示例中,如果a小于b,则结果为c,否则为text

答案 12 :(得分:1)

&lt;运算符检查左操作数是否小于右操作数。

? (在这种情况下,也称为三元运算符)如果 a&lt;则 c 。 b text 否则。

答案 13 :(得分:1)

if a is greater than b return c + " " else return "text" + " "

答案 14 :(得分:1)

这称为条件运算符,它是一种三元运算符 - 因为它需要3个变量 它相当于

if(a < b)
{ 
   return c + " ";
}
else 
{
   return "text" + " ";
}