zoukankan      html  css  js  c++  java
  • String.Empty,NULL和""的区别

    string.Empty不分配存储空间
    ""分配一个长度为空的存储空间   
    所以一般用string.Empty

    为了以后跨平台,还是用string.empty

    在 C# 中,大多数情况下 "" 和 string.Empty 可以互换使用。比如:

    string s = "";
    string s2 = string.Empty;

    if (s == string.Empty) {
      //
    }
    if语句成立

    判定为空字符串的几种写法,按照性能从高到低的顺序是:

    s.Length == 0      优于 s == string.Empty      优于 s == ""

    您关于String.Empty和Null的问题是这样的,这两个都是表示空字符串,其中有一个重点是string str1= String.Empty和 string str2=null 的区别,这样定义后,str1是一个空字符串,空字符串是一个特殊的字符串,只不过这个字符串的值为空,在内存中是有准确的指向的,string str2=null,这样定义后,只是定义了一个string 类的引用,str2并没有指向任何地方,在使用前如果不实例化的话,都将报错。textBox1.Text的值为零长度字符串 ""。

    http://www.cnblogs.com/SAL2928/archive/2007/07/16/820437.html

    其他几个相关链接:

    http://codebetter.com/blogs/brendan.tompkins/archive/2003/10/14/2585.aspx
    String.Empty vs. ""

    So, I just converted a bunch of code that used "" as an empty string like this:

    if(myString == "") anotherString = "";

    to

    if(myString.Equals(String.Empty))   anotherString = String.Empty;

    and I'm wondering if I did the right thing, using String.Empty. I hate having quoted strings in code and prefer to stay away from them whenever possible.   This generally leads to code that is more strongly typed, and easier to maintain, so using String.Empty intuitively feels better than ““.   But, I've actually found a concrete reason to use String.Empty - I did some research and found that in a test, str.Equals(String.Empty) is faster than comparing to ""!    Well, okay. Research isn't the right word, “Doing one google search and accepting on faith the first post I saw” is slightly more accurate.   I even created a little graph of the claims in this post here, that String.Empty is faster.   I'm too lazy to do the test myself, so if you want to verify this, knock yourself out.   I do love making graphs though.
    也就是说 判断字符串是否为空best的方法就是     str.Length==0 !

    http://blogs.msdn.com/brada/archive/2003/04/22/49997.aspx

    http://groups.google.com/group/microsoft.public.dotnet.languages.csharp/browse_frm/thread/a129a0cd26227ace/3a5b5f69e03b5ad4?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/groups%3Fq%3DString.Empty%2Bvs%2B%2522%2522%2Bdotnet%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26selm%3DOqSV8eZ7BHA.2128%2540tkmsftngp03%26rnum%3D1#3a5b5f69e03b5ad4
  • 相关阅读:
    jvm启动参数调优
    程序员之在plmm面前清新脱俗的装逼
    .gradle文件配置
    fan greatwall
    归档
    关于
    Navicat Premium 15 永久激活版安装教程
    Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战
    通过pycharm使用git和github的步骤(图文详解)
    Ubuntu-18.04.1-live-server-amd64.iso安装全过程
  • 原文地址:https://www.cnblogs.com/luoyaoquan/p/2224987.html
Copyright © 2011-2022 走看看