VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > C#教程 >
  • c#学习对象的相等比较

制作者:剑锋冷月 单位:无忧统计网,www.51stat.net
 

  一,引用类型相等比较:

  共四种比较方法:

  1:ReferenceEquals()方法,静态方法,测试两个引用是否指定同一个对象。而且认为null等于null。

1Class1x,y;
2x=newClass1();
3y=newClass1();
4boolB1=ReferenceEquals(null,null);//true
5boolB2=ReferenceEquals(null,x);//false
6boolB3=ReferenceEquals(x,y);//false

  2:虚拟的Equals()方法,虚拟的,可以重写,按值比较对象。

  3:静态的Equals()方法,两个参数,对他们进行比较(和虚拟Equals()区别)。

  4:比较运算符==,可以看作严格值比较和严格引用比较之间的中间选项。

  二,值类型相等比较:

  理论上值比较可以和饮用比较用相同的方法,只不过值类型需要一个装箱的过程。但是,在装箱过程中,每个值都是单独装箱的,

  所以用RefernceEqual()比较值类型的话总是返回false,是没有意义的。

  总结:通过了解饮用类型和值类型,可以理解上面的工作原理。现在对Equals()的概念还有点模糊,希望在应用中能够理解。



相关教程