zoukankan      html  css  js  c++  java
  • C#学习,对象的相等比较

    一,引用类型相等比较:

    共四种比较方法:

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

    1Class1 x,y;
    2= new Class1();
    3= new Class1();
    4bool B1 = ReferenceEquals(null,null);//true
    5bool B2 = ReferenceEquals(null,x);//false
    6bool B3 = ReferenceEquals(x,y);//false

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

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

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

    二,值类型相等比较:

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

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

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

  • 相关阅读:
    Domino
    tomcat 部署 外网访问
    市场4
    android 源码下载编译
    SSIS
    代码审查工具
    mfc 常用控件
    屏蔽home
    MFC BEGIN_MESSAGE_MAP()
    社交产品
  • 原文地址:https://www.cnblogs.com/ratgtttjh/p/1277673.html
Copyright © 2011-2022 走看看