1.准备用HashMap存1w条数据,构造时传10000还会触发扩容吗?
hashmap初始容量必须保证是2的 N 次幂,以方便在扩容的时候,快速计算数据在扩容后的新表中的位置。
因此即使new的时候初始容量1w,容量也会是最接近它的2的 N 次幂,就会变成 2 的 14 次幂 16384,再算上负载因子 0.75f,实际在不触发扩容的前提下,可存储的数据容量是 12288(16384 * 0.75f)。
这种场景下,用来存放 1w 条数据,绰绰有余了,并不会触发我们猜想的扩容。
来源: https://blog.csdn.net/good575654643/article/details/102826545
2.Union和Union All的区别
Union,对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All,对两个结果集进行并集操作,包括重复行,不进行排序;
可以在最后一个结果集中指定Order by子句改变排序方式。
3.in是否走索引