equals与==的区别

equals是判断两个对象的内容是否相等

==是判断两个对象是否是同一个对象

例如

Integer a = new Integer(1);

Integer b = new Integer(1);

如果用if(a.equals(b))会输出true,因为a和b的引用对象的内容都为Integer(1)

如果用if(a==b)会输出false ,因为a和b不是引用的同一个对象

修改成

Integer a = new Integer(1);

Integer b = a;

if(a==b)此时会输出true,这个时候a和b就是引用的同一个对象Integer(1)且这个对象的值对于ab都相等

使用方面的建议:在平常的使用中如果要比较基本数据类型则使用"=="方法,如果比较的是引用数据类型则使用"equals()"方法

原文地址:https://www.cnblogs.com/wgfdd/p/13183320.html