Ven*_*kat 12 java arrays list arraylist data-structures
很多人和作者建议我们使用list而不是array.
List <Integer> list = new ArrayList<Integer>();
list.addElement(1);
....
Run Code Online (Sandbox Code Playgroud)
它背后的原因是什么?
nic*_*bot 14
您通常更愿意为作业选择正确的数据结构.您需要了解手头的任务以及您拥有的所有不同选项以及它们在迭代,搜索,添加,删除和插入数据方面的比较.通常,您需要了解数据结构如何访问和操作内存,并根据您预期应用程序的使用方式选择最佳数据结构.
显然,它并不总是很明确.但是你可以理解不同数据结构的理想.
例如,纯静态,固定长度的数据,您只需迭代,无需搜索,是阵列的理想选择.在密码算法中使用这样的数组是很常见的.如果数据是静态的,而不是迭代,则需要搜索,您可能需要某种类型的树结构.如果你想快速插入,散列可能是理想的.如果数据经常更改,您需要一个有效改变其大小的结构,如列表.
当然,有许多数据结构的变化和组合,旨在解决各种特定问题.之所以如此之多,是因为他们在编写高效课程时的重要性.无论如何,我的观点是,了解数据结构.了解每种情况的理想情况,然后您就能够为任何任务决定或设计合适的数据结构.
当您事先不知道元素数量时,ArrayList 比 Array 更适合使用。ArrayList 比 Array 慢。因此,如果您需要效率,请尽可能尝试使用数组。