6.5 常见疑难解答

6.5.1 “equals”和“==”的区别

答:如果操作两边都是对象句柄,就比较两个句柄是否指向同一个对象。如果两边是基本类型,比较的就是值。

“equals”比较的是两个对象的内容,如果不重载“equals”方法,自动调用object的“equals”方法,则和“==”样。在JDK中像“String”、“Integer”,默认重载了“equals”方法,则比较的是对象的内容。在实际编程中,建议使用“equals”方法。