C# 怎么判断一个字符串是否为空或 null_C# 字符串空值判断方法详解

来源:这里教程网 时间:2026-02-21 17:29:08 作者:

在 C# 中判断一个字符串是否为空或 null 是开发中常见的需求。处理不当可能导致程序出现异常,比如 NullReferenceException。因此,正确使用空值判断方法非常重要。

使用 string.IsNullOrEmpty 方法

这是最常用也最安全的方式,用于判断字符串是否为 null 或空字符串(即

""
)。

string.IsNullOrEmpty 返回布尔值:

如果字符串为
null
""
,返回 true
否则返回 false
string str1 = null;
string str2 = "";
string str3 = "Hello";
<p>Console.WriteLine(string.IsNullOrEmpty(str1)); // 输出: True
Console.WriteLine(string.IsNullOrEmpty(str2)); // 输出: True
Console.WriteLine(string.IsNullOrEmpty(str3)); // 输出: False</p>

推荐在大多数场景下使用此方法,尤其是在接收可能为空的用户输入或配置参数时。

使用 string.IsNullOrWhiteSpace 方法

除了判断 null 和空字符串外,这个方法还能识别空白字符,比如空格、制表符、换行符等。

string.IsNullOrWhiteSpace 在以下情况返回 true:

字符串为
null
字符串长度为 0(即 "") 字符串只包含空白字符,如 " ", "\t", "\n" 等
string str1 = "   ";
string str2 = "\t\n";
string str3 = " abc ";
<p>Console.WriteLine(string.IsNullOrWhiteSpace(str1)); // True
Console.WriteLine(string.IsNullOrWhiteSpace(str2)); // True
Console.WriteLine(string.IsNullOrWhiteSpace(str3)); // False</p>

当你希望排除“看似有内容实则无意义”的空白字符串时,应优先使用此方法。

手动判断(不推荐但需了解)

虽然可以手动编写判断逻辑,但容易出错且代码冗余。

if (str == null || str == "")
{
    // 字符串为空
}

这种方式忽略了空白字符串的问题,也不够简洁。相比而言,内置方法更清晰、安全。

基本上就这些。日常开发中优先使用 string.IsNullOrEmptystring.IsNullOrWhiteSpace,根据是否需要忽略空白来选择即可。不复杂但容易忽略细节。

相关推荐