在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