zoukankan      html  css  js  c++  java
  • C#中判断空字符串的3种方法性能分析

    3种方法分别是:
    string a="";
    1.if(a=="")
    2.if(a==String.Empty)
    3.if(a.Length==0)

    3种方法都是等效的,那么究竟那一种方法性能最高呢?本人用实验说明问题。

    建立3aspx页面(为什么用网页,主要是利用Microsoft Application Center Test 

    WebForm1.aspx
    private void Page_Load(object sender, System.EventArgs e)
      {
       string a="";
       for(int i=0;i<=1000000;i++)
       {
        if(a=="")
        {
        }
       }
      }

    WebForm2.aspx private void Page_Load(object sender, System.EventArgs e)
      {
       string a="";
       for(int i=0;i<=1000000;i++)
       {
        if(a==String.Empty)
        {
         
        }
       }
      }

    WebForm3.aspx
    private void Page_Load(object sender, System.EventArgs e)
      {
       string a="";
       for(int i=0;i<=1000000;i++)
       {
        if(a.Length==0)
        {
        }
       }
      }

     Microsoft Application Center Test 下建立3个压力测试项目:

    测试结果:

    WebForm1.aspx----------if(a=="")


    WebForm2.aspx-------if(a==String.Empty)

    WebForm3.aspx-------if(a.Length==0)

    所以3种方法量化的结果是98105168

    方法

    结果

    if(a=="")

    98

    if(a==String.Empty)

    105

    if(a.Length==0)

    168

    那么为什么if(a.Length==0)最快呢?
    因为整数判断等于最快,没有经过实例化等复杂的过程。

    所以:建议大家判断字符串是否为空用 if(a.Length==0)

  • 相关阅读:
    SlimDX.dll安装之后所在位置
    使用正则表达式进行简单查找
    UDP-C#代码
    非Unicode工程读取Unicode文件
    模板类重载<<运算符
    ganglia及ganglia-api相关介绍
    keystone v3 相关介绍
    ubuntu下ssh使用proxy:corkscrew
    neutron用linux_bridge部署provider网络
    python thread的join方法解释
  • 原文地址:https://www.cnblogs.com/gc2013/p/3924455.html
Copyright © 2011-2022 走看看