zoukankan      html  css  js  c++  java
  • Objects 类

    1. toString 方法:

    public String toString() {
            return getClass().getName() + "@" + Integer.toHexString(hashCode());
        }

    类重写以输出属性和想要的信息

    看其是否被重写,直接看输出类名,可否出现其相关属性内容

    2. equals 方法

    @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);
        }

    类重写后的用法:可以直接将两个类的属性内容相互比较

    其中 getClass 与 instanceof 效果相同  obj instanceof Person

    其中 age = person.age 是因为 age 是 int 型,直接用 == 判断是否相等即可,而 String 类型保存的是索引值

    或者另外的用法:(导入 Objects 类)

    Objects.equals(Object a, Object b)

    public static boolean equals(Object a, Object b) {
            return (a == b) || (a != null && a.equals(b));
        }

    它不会抛出空指针异常,,注意这里是 || 或,当是 基本数据类型时,直接比较,引用类型,需要用 equals

  • 相关阅读:
    求最大的矩形(悬线法)
    限制不互素对的排列(构造)
    括号(构造)
    G. 4.奶牛(二进制枚举)
    新飞行棋(上楼梯)
    小天狼星的访问
    欧拉筛线性筛法,约数和和约数个数
    Find The Multiple
    How Many O's? UVA
    GCD LCM UVA
  • 原文地址:https://www.cnblogs.com/aoligei/p/12431187.html
Copyright © 2011-2022 走看看