C#中IsNullOrEmpty和IsNullOrWhiteSpace的使用方法及区别解析

 更新时间:2023年07月10日 08:46:19   作者:追逐时光者  
今天我们将探讨C#中两个常用的字符串处理方法:IsNullOrEmpty和IsNullOrWhiteSpace,本文中,我们将详细解释这两个方法的功能和使用场景,并帮助您更好地理解它们之间的区别,本文结合实例代码给大家介绍的非常详细,需要的朋友参考下吧

前言

今天我们将探讨C#中两个常用的字符串处理方法:IsNullOrEmpty和IsNullOrWhiteSpace。这两个方法在处理字符串时非常常见,但是它们之间存在一些细微的区别。在本文中,我们将详细解释这两个方法的功能和使用场景,并帮助您更好地理解它们之间的区别。

IsNullOrEmpty

作用

该方法用于检查字符串是否为null或空字符串("")。如果字符串为null或长度为0,返回true;否则返回false。这个方法只关注字符串的长度,不考虑其中的空白字符。

源码实现

    /// <summary>
    /// 判断字符串是否为null或者为空字符串
    /// </summary>
    /// <param name="value">字符串</param>
    /// <returns></returns>
    public static bool IsNullOrEmpty([NotNullWhen(false)] string? value)
    {
        return value == null || value.Length == 0;
    }

示例

    public static void Main(string[] args)
    {
        string str1 = null;
        string str2 = "";
        string str3 = " ";
        string str4 = "追逐时光者";
        Console.WriteLine(IsStringNullOrEmpty(str1));// 输出:True
        Console.WriteLine(IsStringNullOrEmpty(str2));// 输出:True
        Console.WriteLine(IsStringNullOrEmpty(str3));// 输出:False
        Console.WriteLine(IsStringNullOrEmpty(str4));// 输出:False
    }
    public static bool IsStringNullOrEmpty(string str)
    {
        return string.IsNullOrEmpty(str);
    }

IsNullOrWhiteSpace

作用

该方法用于检查字符串是否为null、空字符串("")或只包含空白字符。如果字符串为null、长度为0或只包含空白字符(例如空格、制表符、换行符),返回true;否则返回false。与IsNullOrEmpty不同,IsNullOrWhiteSpace会考虑字符串中的空白字符。

源码实现

    /// <summary>
    /// 字符串是否为null、空字符串或只包含空白字符[(空格、制表符、换行符等空白字符)]
    /// </summary>
    /// <param name="value">字符串</param>
    /// <returns></returns>
    public static bool IsNullOrWhiteSpace([NotNullWhen(false)] string? value)
    {
        if (value == null) return true;
        for (int i = 0; i < value.Length; i++)
        {
            //判断每个字符是否为空白字符,如果存在任何一个非空白字符,即字符不是空格、制表符或换行符等空白字符,
            //那么条件 !char.IsWhiteSpace(value[i]) 就会为真,此时立即返回 false,表示该字符串不是空字符串。
            if (!char.IsWhiteSpace(value[i])) return false;
        }
        return true;
    }

示例

    public static void Main(string[] args)
    {
        string str1 = null;
        string str2 = "";
        string str3 = " ";
        string str4 = "追逐时光者";
        Console.WriteLine(IsStringNullOrWhiteSpace(str1));// 输出:True
        Console.WriteLine(IsStringNullOrWhiteSpace(str2));// 输出:True
        Console.WriteLine(IsStringNullOrWhiteSpace(str3));// 输出:True
        Console.WriteLine(IsStringNullOrWhiteSpace(str4));// 输出:False
    }
    public static bool IsStringNullOrWhiteSpace(string str)
    {
        return string.IsNullOrWhiteSpace(str);
    }

到此这篇关于C#中IsNullOrEmpty和IsNullOrWhiteSpace的使用方法有什么区别?的文章就介绍到这了,更多相关C#中IsNullOrEmpty和IsNullOrWhiteSpace的使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#设置窗体最大化且不遮挡任务栏的方法

    C#设置窗体最大化且不遮挡任务栏的方法

    这篇文章主要介绍了C#设置窗体最大化且不遮挡任务栏的方法,涉及针对form窗体的宽和高的相对大小操作,是非常简单而实用的技巧,需要的朋友可以参考下
    2014-12-12
  • C# 生成随机数的方法示例

    C# 生成随机数的方法示例

    本文介绍了C#中的Random类,用于生成随机数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • C#实现DataTable,List和Json转换的方法

    C#实现DataTable,List和Json转换的方法

    这篇文章主要介绍了C#实现DataTable,List和Json转换的方法,结合实例形式分析了DataTable、list、DataReader、DataSet等转换成JSON的相关实现技巧,需要的朋友可以参考下
    2016-08-08
  • C#泛型类型知识讲解

    C#泛型类型知识讲解

    这篇文章主要介绍了C#泛型类型知识,文中代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • C#实现过滤html标签并保留a标签的方法

    C#实现过滤html标签并保留a标签的方法

    这篇文章主要介绍了C#实现过滤html标签并保留a标签的方法,文中的自定义函数采用正则过滤实现了该功能,是非常实用的技巧,需要的朋友可以参考下
    2014-09-09
  • C#实现ComboBox控件显示出多个数据源属性的方法

    C#实现ComboBox控件显示出多个数据源属性的方法

    这篇文章主要介绍了C#实现ComboBox控件显示出多个数据源属性的方法,实例分析了ComboBox控件的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • C#采用FileSystemWatcher实现监视磁盘文件变更的方法

    C#采用FileSystemWatcher实现监视磁盘文件变更的方法

    这篇文章主要介绍了C#采用FileSystemWatcher实现监视磁盘文件变更的方法,详细分析了FileSystemWatcher的用法,并以此为基础实现监视磁盘文件变更,是非常实用的技巧,具有一定的借鉴价值,需要的朋友可以参考下
    2014-11-11
  • C#获取字符串后几位数的方法

    C#获取字符串后几位数的方法

    这篇文章主要介绍了C#获取字符串后几位数的方法,实例分析了C#操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • C#逐行读取txt文件的方法

    C#逐行读取txt文件的方法

    这篇文章主要介绍了C#逐行读取txt文件的方法,是C#程序设计中非常实用的一个技巧,需要的朋友可以参考下
    2014-09-09
  • C# 实现绘制PDF嵌套表格案例详解

    C# 实现绘制PDF嵌套表格案例详解

    嵌套表格,顾名思义,就是在一张表格中的特定单元格中再插入一个或者多个表格,本文将为大家介绍C#绘制PDF嵌套表格的代码示例,需要的同学可以参考一下
    2021-11-11

最新评论