Files
javaSE-0113/javaSE-day01/src/com/inmind/object01/Demo03.java

38 lines
1.3 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.inmind.object01;
import java.util.Objects;
/*
Objects工具类的equals方法
static boolean equals(Object a, Object b) 返回 true如果参数相等彼此 false否则。
源码:
public static boolean equals(Object a, Object b) {
return (a == b) || (a != null && a.equals(b));
}
注意Objects工具类的equals方法是没有对任何自定义类的对象的内容进行比较的功能的它还是
借用传入的形参一 a的equals方法
Objects类的equals方法的作用:在实现判断2个对象是否相同的基础上,有效地避免空指针异常
注意如果一个自定义类的对象在比较属性是否相同则为同一个对象时必定要重写equals方法
*/
public class Demo03 {
public static void main(String[] args) {
Person p1 = new Person("刘备", 18);
Person p2 = new Person("刘备", 18);
//普通写法:
System.out.println(p1.equals(p2));//true
// p1 = null;
/*if (p1 != null) {//健壮性地非空判断
System.out.println(p1.equals(p2));
}*/
//工具类写法
System.out.println(Objects.equals(p1, p2));//false
System.out.println("程序结束");
}
}