C# string字符串==和equal

在C#中,string 类型的特点有:

(1)属于基本数据类型;

 (2)是引用类型;

 (3)只读;

 (4) string a="1123";

            string b="1123";

 那么a和b指向同一个内存地址;

但是并非2个相同值相等的字符串就对应同一个内存地址;

(5)2个string 类型做“==”操作,先判断内存地址是否相同,如果相同,则立即返回true;如果内存地址不相同,则继续判断值是否相同。

  (6)有2个字符串值相等,如何判断其对应的内存地址相同呢?

回答:用object强转后进行比较。

          string a = "1234";
          string s = "123";

            s += "4";
          string b = s;
          Console.WriteLine((object)a == (object)b);

 

参考文章:http://terrylee.cnblogs.com/archive/2005/12/26/304876.html

posted @ 2012-08-08 20:49  沐雪架构师  阅读(916)  评论(0编辑  收藏  举报