cch*_*ion 7 c# conditional-operator
我似乎无法在谷歌上找到我需要的东西,打赌我会在这里得到快速答案.
String str;
bool b = true;
b ? str="true" : str="false";
Console.Out.WriteLine(str);
Run Code Online (Sandbox Code Playgroud)
那个?:语法对我来说是正确的.我收到了编译器错误.
Program.cs(
13,28 ):错误CS1002 :; 期望的
Program.cs(
13,28 ):错误CS1525:无效的表达式术语':'
Program.cs(13,30):
错误CS1002 :; 预期
不确定csharp语法,但是在cpp中构建.请帮忙!谢谢!
更新:大约10个人给出正确的答案LOL,所以我只会奖励提交它的第一个人.
有趣的语法,我认为我实际上比c ++语法更喜欢它.
我这样做的实际代码是:
ftp.ConnectMode = job.FTPUsePassiveMode ? FTPConnectMode.PASV : FTPConnectMode.ACTIVE;
Run Code Online (Sandbox Code Playgroud)
Jef*_*tes 15
您的代码应为:
str = b ? "true" : "false";
Run Code Online (Sandbox Code Playgroud)
但是,这类似于只是打电话b.ToString().ToLower().也就是说,我怀疑你的实际用例比将布尔值转换为字符串要复杂一些.
更新
如注释中所示,条件运算符返回一个值; 它不像if/ 那样的控制流程else.
Ken*_*art 15
str = b ? "true" : "false";
Run Code Online (Sandbox Code Playgroud)
但你可以这样做:
str = b.ToString();
Run Code Online (Sandbox Code Playgroud)
甚至完全切断了中间人:
Console.WriteLine(b);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1149 次 |
| 最近记录: |