这只是一个好奇的问题。 比方说,我有一个应用程序,其中一些对象是在运行时动态创建的。 而且我们还要说,在大多数情况下,物体的数量不会超过某个阈值,例如: 20.作为最后一个先决条件,我们说,优化绩效是非常重要的。
表现较好的替代方案是什么?
首先创建一个数组[20]。添加对象时,检查数组是否已被完全占用,如果是,则使用newArray [array.length * f]创建一个新数组,其中f是大于1.0f的浮点数。然后用新的数组替换旧数组并添加项
只需从头开始使用ArrayList
请记住,这完全取决于性能优化。
修改 我不知道java中的确切实现,所以它可能是真的,1.)和2.)非常相似。但在阅读完本文之后:https://stackoverflow.com/a/10747397/1075211,我认为它可能会对C#或其他一些语言产生影响?
答案 0 :(得分:1)
您的第一个选项或多或少等同于创建一个类似新ArrayList(20)的ArrayList。