Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 一行if语句,如何转换此if-else语句_C#_If Statement - Fatal编程技术网

C# 一行if语句,如何转换此if-else语句

C# 一行if语句,如何转换此if-else语句,c#,if-statement,C#,If Statement,这里没有人,所以要温柔。我到处找了,似乎找不到答案。我如何压缩以下内容 if (expression) { return true; } else { return false; } 我无法让它工作,因为它返回了一些东西,而不是设置了一些东西。我已经见过这样的事情: somevar = (expression) ? value1 : value2; 就像我说的,请温柔点:) 如果value1和value2实际上是true和false就像您的示例中那样,您也可以 return

这里没有人,所以要温柔。我到处找了,似乎找不到答案。我如何压缩以下内容

if (expression)
{
    return true;
}
else
{
    return false;
}
我无法让它工作,因为它返回了一些东西,而不是设置了一些东西。我已经见过这样的事情:

somevar = (expression) ? value1 : value2;
就像我说的,请温柔点:)

如果
value1
value2
实际上是
true
false
就像您的示例中那样,您也可以

return expression;

在您的案例中,您只需要:

return expression;

原因是表达式本身的计算结果是布尔值
true
false
,因此如果
块(甚至是
?:
运算符)有
是多余的。因为表达式是布尔值:

return expression;

如果
expression
返回布尔值,则只需返回其结果即可

范例

 return (a > b)

我想他不明白为什么,所以你可以解释这一部分,但是的,这就是我要做的。为了澄清,这被称为“三元运算符”,当我尝试使用“返回(表达式)?value1:value2”时,我实际上是对的,但我把它放在了很长的一段路下。所以,我得到了一个关于“代码不可访问”的错误,因为它永远不会到达那个语句。很高兴我问了,尽管“回报表达”更有意义。。。谢谢实际上“三元”只是指由三项组成,它被称为条件运算符@乔尔:是的。这是条件运算符。它是一个三元运算符。当value1或value2是类似于
Clipboard.SetText(TextBox.Text)
 return (a > b)