1.hashmap为什么线程不安全?
1.1 size没有用volatile修饰,如果多线程同时进行put和remove,size的值不准
1.2 如果多线程同时put一个key值相同,会导致其中一个线程的value值丢失
1.3 如果多线程正好发送在resize的时候,也会导致数据的丢失
相关文章参考:
https://www.cnblogs.com/FirstClass/p/6501290.html
https://blog.csdn.net/VIP_WangSai/article/details/70182933
2.String类里面为什么要重写hashcode和equals方法?
2.1 两个对象相等,那么hashcode必然相等,equals判断相等
2.2 hashcode相等,两个对象不一定相等,得看equals
2.3 hashcode有什么作用,可以更快的判断两个对象是否相等
2.4 String里面重写hashcode,是为了降低冲突
https://www.cnblogs.com/dolphin0520/p/3681042.html