今天改项目bug的时候遇到一个误区:
string gogo=string.Empty();
int lang=2;
int.TryParse(gogo,lang);
这个lang一直等于false,搞了半天才知道问题所在。原来gogo为null时转换失败了,记个笔记,以防再遇到这种尴尬。
int.TryParse(string s,out int i) 的参数: s是要转换的字符串,i 是转换的结果。
int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。如果字符串为空,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常;如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;int.TryParse 与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。最后一个参数为输出值,如果转换失败,输出值为 0。