在Java中,HashMap提供了一個(gè)可以指的初始容量的構(gòu)造函數(shù),當(dāng)我們實(shí)現(xiàn)知道要往HashMap中插入多少元素時(shí),變可以選擇使用HashMap的有參構(gòu)造函數(shù),避免HashMap不必要的動(dòng)態(tài)擴(kuò)容。值得注意的是,當(dāng)我們使用new HashMap(n)這個(gè)有參構(gòu)造函數(shù)時(shí),HashMap還會(huì)在底層調(diào)用tableSizeFor(n)這個(gè)方法。這個(gè)方法的作用是找到一個(gè)最近的大于等于n的2的冪的數(shù)。舉例來說,當(dāng)我們傳入10時(shí),經(jīng)過tableSizeFor()這個(gè)方法,其實(shí)會(huì)將初始的容量變?yōu)?6(16是2的4次方)?,F(xiàn)在我們?cè)賮砜碒ashMap要存入1000個(gè)元素和10000個(gè)元素的初始容量應(yīng)該設(shè)置為多少。...