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

    1.如果某个类没有对equals方法重写的话,equals默认和==相同。即使两个对象的内容相同,equals的结果也为false。如:

     Cat c1=new Cat(1,2);

     Cat c2=new Cat(1,2);

     System.out.println(c1==c2);//false;

     System.out.println(c1.equals(c2));//false;

    2.String类和Date类对equals方法进行了重写,所以该类的equals是比较两个对象的内容是否相同。如:

     String s1=new String("hello");

     String s2=new Stirng ("hello");

     System.out.println(s1==s2);//false;

     System.out.println(s1.equals(s2));//true;

    3.可以在某个类中重写equals方法。如:

    class Cat{
     int age;
     int weight;

     //构造方法
     public Cat(int age,int weight) {
     this.age=age;
     this.weight=weight;
    }

     //重写equals方法

    public boolean equals(Object obj){
     if(obj==null){
      return false;
     }
     if(obj instanceof Cat){
      Cat c=(Cat)obj;
      if(c.age==this.age && c.weight==this.weight ){
       return true;
      }
     }
     return false;
    }
    }

  • 相关阅读:
    第一周。。。
    新人日报1129
    Daily Report-1126
    How to read source code[repost]
    Markdown tutorial [repost]
    蘑菇街面经
    阿里面经
    百度凤巢一二面经
    Mybatis最入门---代码自动生成(generatorConfig.xml配置)
    Maven的生命周期阶段
  • 原文地址:https://www.cnblogs.com/beast-king/p/3901632.html
Copyright © 2011-2022 走看看