zoukankan      html  css  js  c++  java
  • 重写Equals

    重写Equals方法分为以下三种情况:

    1.引用类型的基类没有重写Equals

    2.引用类型的基类重写了Equals

    3.值类型重写了Equals

    通常写法是:

    对象是否为空,为空返回false

    对象类型是否相同,不同返回false

    类型转换后进行引用与值的比较如下:

    Object.Equals(v1,v2) ,不同返回false

    v1.Equals(v2),不同返回false

    对于基类,if(!base.Equals(v2)) return false;

    值类型可以自己实现强类型的Equals,避免拆箱与装箱操作.注意System.ValueType.Equals()利用了反射实现,效率不高.

    注意:Object.ReferenceEquals();

    重写Equals必须重写GetHashCode()

  • 相关阅读:
    我开博客了,啦啦啦.
    cf593div2
    Comet OJ
    cf591div2abc
    cfround586ac
    cf589div2
    cf573div2
    Codeforces Round #569 (Div. 2)
    uva11729 水题
    luogu1984 [SDOI2008] 烧水问题
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1705919.html
Copyright © 2011-2022 走看看