• 重写Object的equals方法


    重写Object的equals方法

    public class Person {
       private String name;
       private int age;

       public Person() {
      }

       public Person(String name, int age) {
           this.name = name;
           this.age = age;
      }

       public String getName() {
           return name;
      }

       public void setName(String name) {
           this.name = name;
      }

       public int getAge() {
           return age;
      }

       public void setAge(int age) {
           this.age = age;
      }

       /*@Override
       public boolean equals(Object o) {
           if (this == o) {
               return true;
           }
           if (o == null || getClass() != o.getClass()) {
               return false;
           }

           Person person = (Person) o;

           if (age != person.age) {
               return false;
           }
           return name != null ? name.equals(person.name) : person.name == null;
       }*/

       @Override
       public boolean equals(Object o) {
           if (this == o) {
               return true;
          }
           if (o == null || getClass() != o.getClass()) {
               return false;
          }
           Person person = (Person) o;
           return age == person.age &&
                   Objects.equals(name, person.name);
      }

       @Override
       public int hashCode() {
           int result = name != null ? name.hashCode() : 0;
           result = 31 * result + age;
           return result;
      }

    }

    容忍空指针的Objects.equals()比较方法

    public class Demo01Main {
    public static void main(String[] args) {

    String a = "haha";
    String b = null;

    boolean equals = Objects.equals(a, b);
    System.out.println(equals);

    }
    }
     
  • 相关阅读:
    【题解】[湖南集训]谈笑风生
    【题解】[POI2011]ROT-Tree Rotations
    【题解】[ZJOI2019]语言
    【题解】[HEOI2012]采花
    【题解】[JSOI2009]计数问题
    【题解】[USACO17JAN]Promotion Counting P
    heketi简单安装配置使用
    kubernetes api
    skywalking简单安装配置使用
    《技术的正宗与野路子》
  • 原文地址:https://www.cnblogs.com/lxy522/p/12811799.html
Copyright © 2020-2023  润新知