string s = ""; 与 string s = string.Empty; 有什么区别?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 10:48:23
string s =

string s = ""; 与 string s = string.Empty; 有什么区别?
string s = ""; 与 string s = string.Empty; 有什么区别?

string s = ""; 与 string s = string.Empty; 有什么区别?
当你只定义一个str而不为其分配内存时用string str=null,但是在接下来你使用它之前必须为它赋值如str=“xxxx”也就是为它初始化,不然程序运行时可能会引发空指针异常
而string str= string.Empty是定义和初始化放在了一起它实际是等价于
string str=null;str="";
具体使用时,如果你确定在使用前会给str赋值就用string str=null,否则用string str= string.Empty
用String.Empty表示空字符串,不要用””.String.Empty的定义为public static readonly string Empty,编译时会转化成””,但是String.Empty是一个常数,””是一个字符串对象,对字符串对象进行运算总是很慢的.(说法值得考证)