java中HashMap是线程不安全的,头插法只有在多线程中才会出错,为什么要jdk1.8使用尾插法?

HashMap是线程不安全的,在多线程中很可能出错,尾插法虽然避免了循环链表的情况,但还是会在其他地方出错,那为什么要改成尾插法?

改成尾插法是为了解决并发的循环列表问题,并不是解决线程安全

线程安全的可以用concurrentHashmap 也是jdk1.8的 涉及线程安全当然不要用hashmap。同步的方法有很多,你可以百度学习

逻辑有问题,既然HashMap是线程不安全的,那么头插法改成尾插法显然并不是为了线程安全。
好比问你不会打乒乓球,那为什么你去年骑车上班,今年开车上班。