c# – 使用(Try)Parse将字符串空为Double
发布时间:2020-12-16 00:22:01 所属栏目:百科 来源:网络整理
导读:我在这里使用Parse构建系统,使用Parse转换值(现在是3.5). string myString = String.Empty;double myValue = double.Parse(myString); 抛出FormatException(我期望0.0). 如果我用2.0重写它 string myString = String.Empty;double myValue;if (double.TryPar
我在这里使用Parse构建系统,使用Parse转换值(现在是3.5).
string myString = String.Empty; double myValue = double.Parse(myString); 抛出FormatException(我期望0.0). 如果我用2.0重写它 string myString = String.Empty; double myValue; if (double.TryParse(myString,out myValue)) //do something 我得到了想要的0.0,但不幸的是我失去了获得有意义的错误消息的可能性(在else树中). 为什么给我解析错误和TryParse我的期望值? 我不想那样解决它: >使用if … then避免错误 myValue = myString.Length == 0 ? 0.0 : double.Parse(myString); >如果发生错误,则发出两次通话 if (!double.TryParse(myString,out myValue)) myValue = double.Parse(myString); 解决方法
如果无法解析字符串并且TryParse返回bool,则Parse会抛出异常.您可以处理此bool(如果解析成功,则为true,否则为false)以显示您要显示的成功/错误消息.
由于myValue是一个out参数,它必须由方法设置,因此,如果无法解析字符串,TryParse将其设置为0.0,这就是为什么在使用TryParse方法时获得该数字的原因. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |