完全一样,string只是String的一个别名

解决方案 »

  1.   

    就使用来说是没什么区别的,一个是基础类型一个是类,但是C#可以自己拆装箱(Boxing)的
      

  2.   

    if文寫錯了 if(mm=string.Empty) 見笑了。
    應該是 mm==string.Empty
      

  3.   

    没什么区别,string 是 System.String 的别名。
      

  4.   

    string 是一个数据类型
    String 是一个类当然是2个不同的概念了~
      

  5.   

    区别大了
    string能直接调用方法吗?
      

  6.   

    >> string 是一个数据类型
    >> String 是一个类你可以这么理解但是不代表这就是区别,或者你可以认为这是MS故意给你留下的假象
      

  7.   

    reference ms help:string 类型表示一个 Unicode 字符的字符串。string 是 .NET Framework 中 System.String 的别名。
    尽管 string 是引用类型,但相等运算符(== 和 !=)被定义为比较 string 对象(而不是引用)的“值”(7.9.7 字符串相等运算符)。这使得对字符串相等性的测试更为直观。
    string a = "hello";
    string b = "h";
    b += "ello"; // append to b
    Console.WriteLine( a == b );          // output: True -- same value
    Console.WriteLine( (object)a == b );  // False -- different objects
    + 运算符用于连接字符串:
    string a = "good " + "morning";
    [] 运算符访问 string 中的个别字符:
    char x = "test"[2];  // x = 's';
    字符串为 string 类型并可写成两种形式,即用引号引起来和用 @ 引起来。用引号引起来的字符串括在双引号 (") 内:
    "good morning"  // a string literal
    并且可以包含包括换码序列在内的任何字符:
    string a = "\\\u0066\n";  // backslash, letter f, new line
    注意   转义码 \udddd(其中 dddd 是一个四位数)表示 Unicode 字符 U+dddd。还可识别 8 位 Unicode 转义码:\udddd\udddd。
    用 @ 引起来的字符串以 @ 开头,并用双引号引起来。例如:
    @"good morning"  // a string literal
    用 @ 引起来的优点在于换码序列“不”被处理,这样就可以轻松写出字符串,例如一个完全限定的文件名:
    @"c:\Docs\Source\a.txt"  // rather than "c:\\Docs\\Source\\a.txt"
    若要在一个用 @ 引起来的字符串中包括一个双引号,请使用两对双引号:
    @"""Ahoy!"" cried the captain." // "Ahoy!" cried the captain.
    @ 符号的另一种用法是使用碰巧成为 C# 关键字的被引用的 (/reference) 标识符。有关更多信息,请参见 2.4.2 标识符。
    示例
    // keyword_string.cs
    using System;
    class test 
    {
       public static void Main( String[] args ) 
       {
          string a = "\u0068ello ";
          string b = "world";
          Console.WriteLine( a + b );
          Console.WriteLine( a + b == "hello world" );
       }
    }
    输出
    hello world
    True