我很想使用,if ... else ...但我想知道是否有更简单的方法?我需要在消息框中显示true或false结果.
Mar*_*ers 14
该bool.ToString方法已经做了你想要的.
此方法返回常量"True"或"False".
但是在实践中,通常不需要ToString直接从代码中直接调用.如果您已经在编写字符串,那么最简单的方法是使用连接:
string message = "The result is " + b;
Run Code Online (Sandbox Code Playgroud)
这将编译为一个调用,string.Concat并ToString为您调用该方法.
在某些情况下,使用它会很有用String.Format,并且再次ToString为您调用该方法:
string message = string.Format("The result is {0}. Try again?", b);
Run Code Online (Sandbox Code Playgroud)
我要扔掉:
val ? "true" : "false"
Run Code Online (Sandbox Code Playgroud)
混合,因为通常需要小写结果(许多机器可读的格式,例如许多XML格式,对于布尔值使用小写"true"和"false")并且上面的更快也是IMO清洁比val.ToString().ToLowerInvariant().
当然,扩展到val ? "yes" : "no"等等是微不足道的.可定位是另一回事,并不总是微不足道的(如果翻译得很好,很多情况会有完全不同的句子,所以逻辑messageStart + (val ? "yes" : "no") + messageEnd并不总是很好.