12

我知道我可以设置 null 像

string val = null;

但我想知道我可以将其设置为空的其他方法。有没有String.null我可以使用的功能。

4

6 回答 6

25

我觉得你看得很远String.Empty

string val = String.Empty;

更新: TheFuzzyGiggler评论值得一提:

设置 a stringtoempty而不是null. 避免以后出现异常。如果您必须读取和写入大量字符串,那么您将到处都有null值异常。或者你会有很多if(!string.isNullorEmpty(string))烦人的东西

于 2012-06-25T17:09:19.090 回答
16

您也可以使用默认关键字。

string val = default(string);

这是关于默认关键字的另一个 SO 问题: 在 C# 中,`default` 关键字的用途是什么?

于 2012-06-25T17:09:16.717 回答
4

null不是特殊的字符串值(有String.Emptyfor ""),而是空引用的通用对象文字。

于 2012-06-25T17:08:56.943 回答
0

显然,将某些内容设置为 null 的另一种方法是分配返回 null 的函数的结果:

string SomeFunctionThatReturnsNullString() {return null;}

string val = SomeFunctionThatReturnsNullString();
于 2012-06-25T17:18:22.550 回答
0

将其分配给该值将使其为空,(选择正确的 sql 数据类型,此处为双精度)

    System.Data.SqlTypes.SqlDouble.Null
于 2017-08-16T11:33:22.263 回答
-1

根据您的应用程序,您可以使用string.Empty. 我总是对初始化持怀疑态度,null因为垃圾收集器很棒,但并不完美,如果以某种垃圾收集器无法检测到的方式使用,可能会将您的字符串标记为垃圾收集(尽管这不太可能)。

于 2012-06-25T17:09:49.523 回答