Queue对象底层有一个数组,你若不指定大小,他会默认给定一个大小。
若数据比这个数组的大小多,他会重新分配数组,大概是原来的一倍大,然后把旧有数据copy进去。
如果你反复大量添加数据,又没有指定足够大的初始大小,他会做很多次数组拷贝,消耗性能。
此外,就算数据比数组大小只多1个,他也会自动扩大一倍,浪费空间,所以若能预先知道大概的大小,并指定,可以节约空间。
此外,若数据数量超过你的指定,他仍然会自动扩大一倍。并不是限制了它的大小,Queue永远是无限大小的。
初始化一个可能会用到的值,这样动态添加的时候就不用再分配底层数组了,如果队列加入的元素不超过长度,那么他会带来性能的提升