java– 如何leftshift一个ArrayList

java– 如何leftshift一个ArrayList,第1张

概述我正在使用ArrayList来保存对象的历史记录.我使用.add方法添加的每个新对象,如:if(event.getAction()==MotionEvent.ACTION_UP){if(currentWord!=null){wordHist.add(currentWord);}if(wordHist.size()>WORDHIST_MAX_COUNT){w

我正在使用ArrayList来保存对象的历史记录.我使用.add方法添加的每个新对象,如:

if(event.getAction() == MotionEvent.ACTION_UP){    if(currentWord != null)    {        wordHist.add(currentWord);    }    if(wordHist.size() > WORDHIST_MAX_COUNT)    {        wordHist.remove(0);    }}

但是我不希望这种情况无限增长,而是局限于一定的价值.如果它达到这个最大值,我想要删除最旧的对象(索引0),其余的左移,所以先前的索引1现在是索引0,等等.

如何才能做到这一点?

谢谢

解决方法:

在这种情况下,ArrayList不是一个好的选择,但它可以通过调用remove(0)方法来完成.但如果你想有效地做到这一点,链接列表会更好

(编辑以清楚表明linkedList通常不比ArrayList好,但只在这种情况下)

总结

以上是内存溢出为你收集整理的java – 如何leftshift一个ArrayList全部内容,希望文章能够帮你解决java – 如何leftshift一个ArrayList所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1118774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存