Csharp/C#教程:c#中具有布尔条件的三元分享


c#中具有布尔条件的三元

如果我要编写这段代码,它可以正常使用’if-else’布局。

if(isOn) { i = 10; } else { i = 20; } 

虽然我不确定如何使用三元运算符转换它

  isOn = true ? i = 1 : i = 0; 

错误:无法确定条件表达式的类型,因为’void’和’void’之间没有隐式转换。

编辑:答案= i = isOn ? 10 : 20; i = isOn ? 10 : 20;

用方法可以做到这一点吗?

 if(isOn) { foo(); } else { bar(); } 

请尝试以下方法。 顺便说一下,它只适用于值赋值而非方法调用。

 i = isOn ? 10 : 20; 

参考:

你可以试试这个:

 i = isOn? 10:20 

MSDN说:

条件必须评估为真或假。 如果condition为true,则计算first_expression并成为结果。 如果condition为false,则计算second_expression并成为结果。 只评估两个表达式中的一个。

编辑:-

如果要在条件运算符中调用void方法,则可以使用委托,否则无法对方法使用三元运算符。

如果你的方法返回一些东西,那么尝试这样:

 i = isOn ? foo() : bar(); //assuming both methods return int 

你走在正确的轨道上,但稍微偏离了一点。 i = isOn ? 10 : 20;

如果isOn == true ,则将10分配给i如果isOn == true ,则将20分配给i

尝试以下方法

 i = isOn ? 10 :20 

请尝试以下方法:

 i = isOn ? 10 : 20 

这是一个可能有帮助的解释。 您正在寻找的声明是:

 i = isOn ? 10 : 20; 

这就是这意味着:

 (result) = (test) ? (value if test is true) : (value if test is false); 

你需要:

 i = true ? 10 : 20; 

你的病情是true

上述就是C#学习教程:c#中具有布尔条件的三元分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1014295.html

(0)
上一篇 2021年12月30日
下一篇 2021年12月30日

精彩推荐