1. HashMap的底层实现原理,扩容机制是怎样的?底层结构:HashMap在JDK 1.8中采用数组+链表+红黑树的结构。初始容量是16,负载因子默认0.75。当链表长度超过8且数组长度大于等于64时,链表会转换为红黑树;当红黑树节点少于6个时会退化回链表。put操作流程:首先对key进行hash运算,通过hash值和数组长度减1做与运算定位到数组下标。如果该位置为空就直接插入;如果不为空,先判断key是否相同,相同就覆盖value;如果是树节点就按红黑树方式插入;如果是链表就遍历链表,找到相同key就覆盖,没找到就插入到链表尾部。插入后判断链表长度是否需要树化,最后判断是否需要扩容。扩容...