获取列表元素

时间:2012-04-19 18:25:47

标签: java list

我有一个带有元素的ArrayList,例如:

[a,b,c,d,e,f,g,h];

并且需要获取元素[a,b,c]它也应该是一个ArrayList并将它们从第一个List中删除,然后我再拿一些元素从第一个列表中删除它们。

那么做这项工作的最佳方式(考虑一个时间)是什么? 我的意思是我应该迭代元素或应该转换为数组而不是使用它?

也许有一些快速的方法可以做到这一点?

感谢。

2 个答案:

答案 0 :(得分:1)

使用subList()创建新列表以获取第一个视图,然后在subList上使用clear()。例如:

subList = originalList.subList(0, 3);
newList = new ArrayList(subList);
subList.clear();

这比迭代原始列表更有效,一次删除一个元素,因为从ArrayList中删除元素涉及移动所有元素。使用subList只需转换一次。

答案 1 :(得分:0)

您可以使用sublist方法将此列表拆分为两个(对sublist进行两次调用)。