- ·上一篇内容:不要让你的电脑成为病毒传播的通道
- ·下一篇内容:C# Excel 操作个人小结
关于String.Equals(object,object)和(object==object )的比较
情况一
string s = "Test";
string t = string.Copy(s);
Console.WriteLine(s == t);
Console.WriteLine((object)s == (object)t);
输出为true false
情况二
string s = "Test";
string t = s;
Console.WriteLine(s == t);
Console.WriteLine((object)s == (object)t);
输出为true true
情况三
string s = "Test";
string t = string.Copy(s);
Console.WriteLine(s.Equals(t)); //true
Console.WriteLine((object)s.Equals((object)t));//true
情况四
string s = "Test";
string t = s;
Console.WriteLine(s.Equals(t)); //true
Console.WriteLine((object)s.Equals((object)t));//true
结论:
String.Equals();方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等。
==用于比较引用和比较基本数据类型时具有不同的功能:
比较基本数据类型,如果两个值相同,则结果为true
而在比较引用时,如果引用指向内存中的同一对象(即内存地址是一样的),结果为true。
微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。
个人成长离不开各位的关注,你的关注就是我继续前行的动力。