use*_*929 3 java list arraylist
我想在java中创建一个列表,在添加新元素时,将检查是否达到了限制.如果是,删除最旧的元素.
我正在考虑制作ArrayList的子节点并覆盖add(Object).在那里我会做到:
if(size() + 1 > MAX) remove(get(0)); super.add(newObject);
有更好的方法吗?
dev*_*obf 5
可能有很多解决方案,但我认为如果你做出一个改变,你的方法是合适的:你的底层实现类应该是a LinkedList,而不是a ArrayList.其原因是,当你调用remove上ArrayList后取出值必须上移的每一个元素(做remove(0)的最糟糕的情况!).然而,这对于a来说不是问题LinkedList.
LinkedList
ArrayList
remove
remove(0)
归档时间:
12 年,2 月 前
查看次数:
1441 次
最近记录: