equals和hashcode为什么要一起重写

时间:2022-10-19 08:19:08

equals()方法与hashCode()的通用协定是:
2.1 如果两个对象相等(equal),那么必须拥有相同的哈希码(hash code)
2.2 即使两个对象有相同的哈希值(hash code),他们不一定相等.

因为hashMap的很多方法用到了hashcode()和equeals(),所以必须重写。

具体例子见收藏

二、一般write()方法后必须跟一个flush()以释放buffer,write()只是表示写入了缓冲区,flush()方法刷新缓冲区将内容写入目标。