string.format if else语句
如何处理string.format中的语句? 我需要检查,如果x = 0,x = 1或X = NULL 我知道我可以用两个数值做,但我不知道如何添加另一个这里还有statmentstring.format if else语句
String.Format("{0}", x == 0 ? "True" : "False")
String.Format("{0}", x == null ? "<null>": (x == 0 ? "True" : "False"))
谢谢亚历克斯...这是我所需要知道的(格式)没有所有额外的...所有这一切感谢您的快速反应 – EagleFox 2013-03-19 19:15:25
怎么加另一种说法在这里
嵌套?:
是可能的,但几乎总是一个坏主意。
直接回答,假设x
是int?
是只用()
:
String.Format("{0}", x == null ? "Null" : (x.Value == 0 ? "True" : "False"))
我不会说它总是*一个坏主意。我已经看到它的效果非常好 - 但我不会这么做*在这里的方法调用... – 2013-03-19 19:05:39
我已经把'几乎'放在前面了。我的选择也不是那么好,但也是由于对x类型的困惑。 – 2013-03-19 19:09:41
+1注意,这是一个坏主意 – 2013-03-19 19:13:42
我不喜欢三元IFS的嵌套。在一般的情况下,并根据您使用C#的版本,你可以试试这个:
var values = new Dictionary<int?, string>()
{
{ 0, "zero"},
{ 1, "one"},
{ 2, "two"},
{ null, "none"}
};
String.Format("{0}", values[x]);
IMO,表始终击败复杂,如果超过3个值的语句。
'x'的类型是什么? (如果它是'int',它不能为空......) – 2013-03-19 19:04:29
为什么当结果是* True *或False?字符串时使用'string.Format'?你真的需要一个更完整的例子,然后我们才能帮到你... – 2013-03-19 19:05:10
嘿乔恩...我在我的网格列上渲染我的标题。因此,我需要用我的json数据格式化标题 – EagleFox 2013-03-19 19:07:54