不同
s=null表示s这个引用变量为空,而一个空的变量是什么都没有的,没有值,没有属性,也没有方法
s=""表示s这个引用变量指向一个空串

解决方案 »

  1.   

    null 是对于对象的; "" 是给一个值类型赋控值
      

  2.   

    null == Nothing
    "" == 长度为0的字符串string s1 = null;
    string s2 = "";Console.WriteLine(s1.Length); // 空引用异常(Null reference exception)
    Console.WriteLine(s2.Length); // 输出0
      

  3.   

    null:相当于盒子都没有.
    "":相当于是个空盒子.
      

  4.   

    稍微更正一下
    说null == Nothing也不太合适
    因为最起码null代表了一个空指针
    所以
    string s1 = null;

    string s2;
    也不一样,因为s2连这个空指针都没得 :-)
      

  5.   

    string s1 = null;

    string s2;
    结果会是一样的
      

  6.   

    string s;  //还没有初始化
    string s=null;//初始化为null指针
    string s=""; //初始化为空字符串这三者都是不同的。
      

  7.   

    不同,null是object是空
    ""是object的值是空
      

  8.   

    null是一个幽灵!""是一个实体。
      

  9.   

    不一样~~~Null是空,就是什么都没有!
    ""是空字符串~
      

  10.   

    string aaa = null;
    string bbb = "";输出aaa.ToString()和bbb.ToString()看一下结果就知道乐。
      

  11.   

    是不同的,楼上的兄弟已经说了。
    给你点sql下的解释:空 (NULL) 值表示数值未知。空值不同于空白或零值。没有两个相等的空值。比较两个空值或将空值与任何其它数值相比均返回未知,这是因为每个空值均为未知。空值通常表示未知、不可用或将在以后添加的数据。例如,客户的中间名首字母在客户下定单时可能不知道。""---这就不用说了
      

  12.   

    // ""=String.Empty吗?等价的
    反编译MsCorLib.dll得到:
    static String()
    {
          string.Empty = "";
          string.WhitespaceChars = new char[21]...
    }
    这是String类的静态构造函数,初始化string.Empty为""
      

  13.   

    string s;
    这样定义时 s==null