Java常用类学习:Object类(equals方法)
-
equals方法:
-
Object equals()方法用于比较2个对象是否相等;
-
equals()方法比较2个对象,是判断2个对象的引用是否相同;即比较2个对象的内存地址是否相等;
-
注意:如果子类重写了equals()方法,就需要重写hashCode()方法,比如String类就重写了equals()方法,同时也重写了hashCode()方法;
-
-
语法:
-
object.equals(Object obj);
-
-
参数:
-
-
返回值:
-
boolean类型,如果2个对象相等返回true,否则返回false;
-
-
代码案例:equals比较
public class ObjectDemo02 {
public static void main(String[] args) {
Student st1=new Student();
Student st2=new Student();
//判断st1与st2是否相等:
//不同对象,内存地址不同,所以不相等;返回false
if(st1.equals(st2)){
System.out.println("匹配");
}else{
System.out.println("不匹配");
}
System.out.println("---------------------------");
//str1赋值给obj3
//String重写了equals()方法
//对象引用,内存地址相同,返回true
Object obj3=st1;
if(ob3.equals(str1)){
System.out.println("匹配");
}else{
System.out.println("不匹配");
}
}
}
-
String类重写了equals()方法,用于比较2个字符串是否相等;
-
代码案例2:
public class ObjectDemo03 {
public static void main(String[] args) {
//String类使用equals()方法
//创建2个对象
String str1=new String();
String str2=new String();
//判断str1与str2是否相等
//初始化的2个对象都为null,所以是相等,返回true
System.out.println(str1.equals(str2));
//给对象赋值
str1="haha";
str2="xixi";
//2个值不同,内存地址也不同,所以不相等,返回false
System.out.println(str1.equals(str2));
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)