java 轻量级什么,最轻量级的Java集合

如果我要创建一个Java Collection,并且只想用元素填充它,然后遍历它(事先不知道必要的大小),即我需要的只是Collection< E> .add(E)和Collection< E> .iterator(),我应该选择哪个具体类?例如,使用Set而不是List是否有任何优势?哪一个开销最小?

解决方法:

which concrete class should I choose?

我可能只是使用ArrayList或LinkedList.两者都支持add和iterator方法,而且它们中的更直接有任何可观的开销.

Is there any advantage to using a Set rather than a List, for example?

不,我不会这么说. (除非你依赖于元素的顺序,在这种情况下你必须使用List,或者想要禁止重复,在这种情况下你应该使用Set.)

(我没有看到任何Set实现如何击败add / iterator方法的列表实现,所以即使我不关心顺序,我也可能会使用List.)

Which one would have the least overhead?

这听起来像是微基准测试,但是如果我被迫猜测,我会说ArrayList(或者说在ArrayLists需要经常重新分配内存的情况下的LinkedList

标签:java,optimization,collections

来源: https://codeday.me/bug/20190711/1435738.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值