java - 如果添加null,ArrayList会动态增长吗?

标签 java arraylist

假设 Java 8。

ArrayList 的默认大小为 10(存储数据的数组大小默认为 10),当向其中添加第 11 个元素时,数组大小增加到 15。

如果在第11位加上null,是否也会增加?

我知道在列表上调用size() 会返回11,但问题是内部数组是否也会增长?

最佳答案

public boolean add(E e) {
    ensureCapacityInternal(size + 1); 
    elementData[size++] = e;
    return true;
}

这是 Java 的 ArrayList 的 add 函数的实现。没有条件处理null对象,在这种情况下它被当作普通对象并添加到ArrayList。这将增加 Collection 的大小,因为它仍然作为一个元素存在。

这也会增加列表的内部大小。

关于java - 如果添加null,ArrayList会动态增长吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53957837/

相关文章:

android - Json转换器 "Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $"

java - 如何在 Java 中创建唯一的值列表?

java - 如何通过 Hashmap<int<arraylist>> 分配比预期更多的值来修复循环

java - 如何使用 Map 键作为列表对象和值作为顺序对 ArrayList 进行排序?

java - 如何 stub /模拟 XMLBeans 对象进行测试?

java - 执行器不从主线程内执行线程

java - JXBrowser在Ubuntu18.04中启动失败

java - 在 Java 中序列化并保存 double [] 的 ArrayList

java - 有没有办法将列表中的所有内部对象提取到新列表

java - 为什么有 java 单例类?你什么时候需要使用一个