我有一个方法会收到string
,但在我可以使用它之前,我必须将其转换为int
。有时可以是null
我必须将其值更改为"0"
。今天我有:
public void doSomeWork(string value)
{
int SomeValue = int.Parse(value ?? "0"); //it can throw an exception(i know)
}
我做到了,但我的老板要求我将其重构为:
public void doSomeWork(string value)
{
if(string.IsNullOrEmpty(value))
value = "0";
int SomeValue = int.Parse(value);
}
您认为最好的选择是什么?
为什么不直接使用TryParse()
?
public int doSomeWork(string stringValue)
{
int value;
int.TryParse(stringValue, out value);
return value;
}
上面的代码会返回0
如果该值不是实际数字。
所以在我看来,我的例子是最具可读性的。我尝试解析 int 并返回它。不使用合并运算符,也不使用字符串方法。此方法还处理解析时可能引发的异常(除非您想要异常......)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)