3

在过去的几年里,我不得不深入研究 Spring 的源代码。我注意到开发人员真的很喜欢链表。我不确定他们为什么选择它作为他们的列表实现而不是数组列表。有谁知道为什么做出这个延期决定?

4

1 回答 1

2

这真的取决于使用情况。但也许是因为增长链接列表时的空间复杂度很便宜,如果你只是迭代一个集合,你不做任何查找操作,这是一个不错的选择。回想一下,ArrayList 实现有一个几何增长模型,如果您不知道先验列表有多大,那么这是一个糟糕的选择。使列表超过当前容量将导致当前数组被复制到当前容量两倍的新数组中。

于 2012-04-21T02:02:19.020 回答