java中equals()返回boolean值,true表示相等,false表示不相等。不等于就是对上面的结果取反,!a.equals(b)。
Java中equals的区别。
可用于基本类型和引用类型:当用于基本类型时候,是比较值是否相同;当用于引用类型的时候,是比较对象是否相同。
对于String a = “a”Integer b = 1这种类型的特有对象创建方式,==的时候值是相同的
基本类型没有equals方法,equals只比较值(对象中的内容)是否相同(相同返回true)。
一个类如果没有定义equals方法,它将默认继承Object中的equals方法,返回值与==方法相同。
equals()来源于对象object中,它的原型是用==做比较,在object源码中可以看到。我们在integer、string
等封装类中重写了equals方法,让它去比较对象的值,从而上面的方法是对的,而下面没有重写equals方法,所以它用的是继承object的equals方法,它比较的是对象引用的内存地址。如果你不是很理解可以先阅读有关==和equals()方法区别的博文。