zoukankan      html  css  js  c++  java
  • Object类--equals方法

    equals方法

    1、比较的是对象引用的是否指向同一块内存地址

        public static void main(String[] args) {
            HuaWei huawei=new HuaWei();
            huawei.cpu=1;           
            HuaWei huawei1=new HuaWei();
            huawei.cpu=1;
            if(huawei.equals(huawei1)){
                System.out.println("两个对象是相同的!");
            }else{
                System.out.println("两个对象是不相同的!");
            }
        }

    结果:

    两个对象是不相同的!
    

    2、作用是比较两者的区别,作用类似于“==”,默认情况下equals比较的是内存地址,而在一般情况我们需要比较的是两个对象的值是否一致,那么如何解决这个问题:当父类方法无法满足我们的需要时,此时就需要重写这个方法。

        public boolean equals(Object obj) {
            if (this == obj)    //判断两个引用的地址是否相同
                return true;    
            if (obj == null)    //判断另外一个对象是否是空值
                return false;
            if (getClass() != obj.getClass())//getClass()是类对象,
                return false;
            HuaWei other = (HuaWei) obj;
            if (cpu != other.cpu)  //两个对象的属性值是否不相同
                return false;
            if (screen != other.screen)
                return false;
            if (width != other.width)
                return false;
            return true;
        }
  • 相关阅读:
    铁轨
    POJ 2385 -- Apple Catching
    POJ 3258 -- River Hopscotch
    POJ 1469 -- COURSES (二分匹配)
    POJ 2349 -- Arctic Network
    最小生成树
    NOIP200703守望者的逃离
    NOIP200706字符串的展开
    POJ 1036 -- Gangsters
    POJ 1952 -- BUY LOW, BUY LOWER
  • 原文地址:https://www.cnblogs.com/tengpengfei/p/10454069.html
Copyright © 2011-2022 走看看