【发布时间】:2019-12-14 02:18:13
【问题描述】:
如Java API Doc 和this post 中所述,list.add(index,element) 会导致将给定元素添加到给定索引处。在此过程中,后续列表项将向右移动一个位置(通过在其索引中添加 1,如 API 文档中所述)
我的问题是这实际上是如何发生的?
假设我们有一个包含 100 个元素的 ArrayList,我们说add(0, 6),那么鉴于底层数据结构是一个数组,那么现在 API 将如何完成这个操作?
更具体地说:是否会将所有现有的 100 个元素复制到其直接正确的位置?还是有更有效的处理方式?
【问题讨论】:
-
如果您想了解它是如何完成的,为什么不直接查看source code?您可以在我为您提供的链接中找到它,您可以在您安装的 JDK 中找到它。如果您使用的是好的 IDE,那么很容易查看该源代码。您使用的是 IDE,对吗?如果没有,省去很多麻烦,现在就买一个。
标签: java arraylist collections