Objects和Object中的equals方法的比较

本文介绍了Java中equals方法的基本概念,包括其在Object类中的实现可能会导致空指针异常的问题。接着,对比了Objects类中的equals方法,指出其优势在于能够避免空指针异常。内容包括equals方法的作用,以及在Person类中的应用示例。
摘要由CSDN通过智能技术生成

一:equals方法的介绍

1:介绍:

Person类默认继承了Object类,所以可以使用Object类的equals方法
1:作用: boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”。
2: equals方法源码:
public boolean equals(Object obj) {
return (this == obj);
}
参数:
Object obj:可以传递任意的对象
== 比较运算符,返回的是一个布尔值 true false
3:注意:
a:
基本数据类型:比较的是值
引用数据类型:比价的是两个对象的地址值
b:
this是谁?那个对象调用的方法,方法中的this就是那个对象;p1调用的equals方法所以this就是p1
obj是谁?传递过来的参数p2
thisobj -->p1p2

2:代码讲解:

Person p1 = new Person("迪丽热巴",18);
//Person p2 = new Person("古力娜扎",19);
Person p2 = new Person("迪丽热巴",18);
System.out.println("p1:"+p1);//p1:com.itheima.demo01.Object.Person@58ceff1
System.out.println("p2:"+p2);//p2:com.itheima.demo01.Object.Person@7c30a502

//p1=p2;//把p2的地址值赋值给p1
ArrayList<String> list = new ArrayList<>();

boolean b = p1.equals(p1);
System
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值