我的应用程序中有很多场景,我将字符串声明为string.empty,然后动态地为其添加值。在C#中,是
string status
和
string status = String.Empty;
相同?
答案 0 :(得分:3)
这些代码行不等同。
如果您已在方法之外声明string status
,则会将其初始化为其默认值null
。
如果你已经在方法中声明了string status
,那么它就不会被初始化,并且在你明确地给它一个值之前你不能使用它。
您是否需要string status = String.Empty;
取决于您的情况,但如果您发现您的代码有时会抛出,这似乎是避免NullReferenceException
的好方法。
答案 1 :(得分:2)
没有。它不一样。 String datataype允许null。请记住,我们鼓励您始终初始化所有变量/属性/属性。
string status = String.Empty;
答案 2 :(得分:1)
否, string 变量的默认值为 Null
字符串状态;
string status = String.Empty;
将创建一个字符串对象,其值为空常量,这是一个零长度的字符串