码迷,mamicode.com
首页 > 其他好文 > 详细

方法Equals和操作符==的区别

时间:2015-05-27 15:37:39      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

http://www.codeproject.com/Articles/584128/What-is-the-difference-between-equalsequals-and-Eq

 

When we create any object there are two parts to the object one is the content and the other is reference to that content.
So for example if you create an object as shown in below code:-
  1. “.NET interview questions” is the content.
  2. “o” is the reference to that content.
object o = ".NET Interview questions"; 

 

 技术分享
 
“==” compares if the object references are same while “.Equals()” compares if the contents are same.
 
So if you run the below code both “==” and “.Equals()” returns true because content as well as references are same.
 
 技术分享
object o = ".NET Interview questions";
object o1 = o;
Console.WriteLine(o == o1);
Console.WriteLine(o.Equals(o1));
Console.ReadLine();

 

True

True


Now consider the below code where we have same content but they point towards different instances. So if you run the below code both “==” will return false and “.Equals()” will return true.

 技术分享

object o = ".NET Interview questions";
object o1 = new string(".NET Interview questions".ToCharArray());
Console.WriteLine(o == o1);
Console.WriteLine(o.Equals(o1));
Console.ReadLine();

 

False

True


When you are using string data type it always does content comparison. In other words you either use “.Equals()” or “==” it always do content comparison.

You can also watch the following video of the above explanation at C# interview questions and answers :- Difference between "==" and ".Equals()" ?

<OBJECT type="application/x-shockwave-flash" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=3,0,0,0" WIDTH="640" HEIGHT="360" data="http://www.youtube.com/v/3IReFdq5d7o?version=3&feature=player_detailpage"></OBJECT>

方法Equals和操作符==的区别

标签:

原文地址:http://www.cnblogs.com/chucklu/p/4533309.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!