equals比较的不是内容!
面试题中 == 和equals的区别?
1.肯定有人会说 == 比较的是地址,equals比较的是内容,但是equals比较的也是地址!!下面来看一段代码
2.为什么最后一个等于false?直接看Object源码,因为我们用的equals是Object中的。
所以
看似是:
stu1.equals(stu2);
其实还是:
stu1 == stu2;
3.所以一般自定义的类,要重写hashcode和equals方法来实现具体业务要求。hashcode是为了提高集合的效率而且hashcode不是内存地址!!!这里实现一下equals方法:
这样就实现了具体业务功能
版权声明:本文为qq_35364656原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。