zoukankan      html  css  js  c++  java
  • string.IsNullOrEmpty和string.IsNullOrWhiteSpace方法的区别

    由于原来一直都没注意到这两个方法,一直使用string.IsNullOrEmpty,当看到string.IsNullOrWhiteSpace时,而且在微软人员开发的项目中经常使用时才注意到,查了一下MSDN,记一下免得以后忘记。

    string.IsNullOrEmpty

    都知道,这个功能是判断字符串是否为:null或者string.Empty。如果是如" "这样的字符就返回false了,为了达到判断过滤这些功能,就要使用Trim()和Length属性帮忙,判断是否长度为零,于是乎就产生了如下的方法。

    string.IsNullOrWhiteSpace

    这个是判断所有空白字符,功能相当于string.IsNullOrEmpty和str.Trim().Length总和,他将字符串给Char.IsWhiteSpace为ture的任何字符都将是正确的。根据MSDN的说明,这个方法会比调用上述两个方法的性能更高而且简洁,所以在判断这个功能时,推荐使用。

    using System;
    
    public class Example
    {
       public static void Main()
       {
          string[] values = { null, String.Empty, "ABCDE", 
                              new String(' ', 20), "  	   ", 
                              new String('u2000', 10) };
          foreach (string value in values)
             Console.WriteLine(String.IsNullOrWhiteSpace(value));
       }
    }
    // The example displays the following output:
    //       True
    //       True
    //       False
    //       True
    //       True
    //       True

    以上就是代码执行效果,至于性能就听微软的吧,不过string.IsNullOrEmpty和string.IsNullOrWhiteSpace相比,肯定是前面一个性能更高【没有测试过,如果有哪位测试过的可以留言告诉我哦,谢谢!】,所以还是要选择性使用的。

  • 相关阅读:
    每日作业报告之《大道至简》读后感
    Java学习的第二十六天
    Java学习的第二十五天
    封装按钮组件
    回车导致地址栏出现?
    判断用户输入值的是不是整数
    String类型在JVM中的内存分配
    MySQL索引的原理及使用
    ICPC Yokohama, 2018(Domestic)C. Skyscraper “MinatoHarukas ” (暴力)
    CH6803 导弹发射塔(二分图最大匹配/多重匹配)
  • 原文地址:https://www.cnblogs.com/Alex80/p/5542408.html
Copyright © 2011-2022 走看看