java.util.List#size()
返回此列表中的元素数。如果此列表包含 超过Integer.MAX_VALUE元素,返回Integer.MAX_VALUE。
研究java.util.LinkedList
源代码:
公共方法:
public boolean add(E e) {
addBefore(e, header);
return true;
}
private Entry<E> addBefore(E e, Entry<E> entry) {
Entry<E> newEntry = new Entry<E>(e, entry, entry.previous);
newEntry.previous.next = newEntry;
newEntry.next.previous = newEntry;
size++;
modCount++;
return newEntry;
}
因此,如果在添加元素大小等于Integer.MAX_VALUE
之前,大小将变为
-Integer.MAX_VALUE-1
方法大小只返回没有检查的字段值:
public int size() {
return size;
}
你怎么看?
答案 0 :(得分:-1)
在您设法在列表中放置超过20亿个对象之前很久就会耗尽内存,因此无需担心。