无法在下面的代码中找出异常

时间:2014-01-14 07:17:17

标签: c#

当将空引用分配给Object类型但是没有空字符串时,ToUpper()正在工作。 请澄清它的基本原理:

Object obj = null;
string str1 = Convert.ToString(obj).ToUpper(); //No exception 

string str2 = null;
string str3 = Convert.ToString(str2).ToUpper(); // Throws exception

1 个答案:

答案 0 :(得分:4)

这是因为Convert.ToString(object)string.Emptyobject时返回nullConvert.ToString(string)返回字符串不变(即:null)。 您无法在.ToUpper()上致电null

Check this question