分析“==”、“equals”和“hashcode”的区别
“==”:用于基本数据类型比较时比较的是内容,用于复杂类型比较时则比较的是它们的内存地址。
**“equals”:**在没有重写equals的情况下比较的是内存地址,它是object类中的方法,用于复杂对象的比较,String对equals默认进行了重写。
**hashcode:**是 Object类中的方法,主要用于集合中使用,将传递进来的数据使用hash计算后得出来的hash值可以散列到集合中的不同位置,减少碰撞的发生几率,提高性能。
原创
2019-08-21 10:13:24 ·
120 阅读 ·
0 评论