ArrayListlist=newArrayList(20);中的list扩充几次
时间: 2023-08-20 08:39:49 浏览: 191
JAVA OOP笔试题
在Java中,ArrayList是一个动态数组,它的大小可以根据需要自动增长或缩小。当我们使用ArrayList的构造方法来创建一个指定初始容量的ArrayList时,例如`ArrayList list = new ArrayList(20);`,实际上是指定了ArrayList的初始容量为20,也就是说,ArrayList在刚创建时会分配一个长度为20的数组作为其内部存储结构,但是并不会马上占用全部20个元素,只有当我们向ArrayList中添加元素时,ArrayList才会根据需要动态地增加内部数组的大小,以容纳新增的元素。
因此,对于`ArrayList list = new ArrayList(20);`这样的代码,ArrayList会在刚创建时分配一个长度为20的数组作为其内部存储结构,但不会立即扩容。当我们向该ArrayList中添加元素时,如果元素个数超过了20,ArrayList会自动扩容,每次扩容会将内部数组的大小增加一倍,因此在这种情况下,list可能会扩容多次,具体扩容次数取决于我们向ArrayList中添加了多少元素。如果我们只向list中添加了少量元素,可能不会发生扩容,如果我们添加了大量元素,可能会扩容多次。
阅读全文