我有个小问题。
例如,我有ArrayList
ArrayList<Double> Temp1 = new ArrayList<>();尺寸=5 (0,1,2,3,4)。当出现新值时,我需要移除一个值来移动数据。例如,当Temp1.add(5)我必须得到一个结果(1,2,3,4,5)。可以不使用循环吗?
因为在我的应用程序中,我有非常大的ArrayList (1000-15000个元素),它由连接的设备以每秒5-10项的速度填充。当我使用循环"for“来检索最后50个项目时,我失去了效率,并以每秒从设备1-2项接收到。
发布于 2015-12-02 06:21:41
正如@Nyavro在他的评论中提到的那样,您可以使用LinkedList实现队列接口。只需将新元素添加到尾部,然后弹出头部即可。
List<Double> temp1 = new LinkedList<>();
temp1.add(5);
temp1.removeFirst();发布于 2015-12-02 06:21:34
您可以使用set函数替换某些值--例如,您需要从Arraylist中删除1并将其更改为100,然后这样做
Temp1.set(1,100);这里1是索引,100是值。
发布于 2015-12-02 06:22:05
您总是希望删除第一个元素吗,Right.then您可以尝试这样做,当您想要添加新的值时,首先使用
Temp1.remove(0);https://stackoverflow.com/questions/34036084
复制相似问题