按楼主的理解,equals方法可以禁用了(因为基本数据类型变量如int、boolean等只能用==)。 全部用==。编译器一看到是非基本数据类型的变量也就是对象使用==,就转义为equals执行,对吗? 谁能举个反例啊,必须比较对象引用的逻辑?
equals() 默认就是 == ,但像String类 包装类 File类 Date类这些重写Object类的equals()方法,比较是两个对象的 ”实体内容"是否完全相同
那你要判读是不是一个地址找谁哭去啊?
==是运算符,equals是方法 运算符基本上是操作基本类型,equals对应对象引用。当然==也可以操作对象引用,比较的是地址值
有想法. 其实java内部可以考虑操作符重载的, string对象的==可以实现equals. 字符串==的确是很少使用, 但是并不是完全不用, 估计设计者要考虑到少数使用==的情况.
62,628
社区成员
307,259
社区内容
加载中
试试用AI创作助手写篇文章吧