首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数组和来自java集合框架的集合之间的区别?

数组和来自java集合框架的集合之间的区别?
EN

Stack Overflow用户
提问于 2012-11-13 13:23:45
回答 4查看 36.8K关注 0票数 16

正如标题所述,我正在研究“数组与来自java框架的任何集合之间的差异”。

认为它的高度足以给我们中的一些人(或许多人)提供一些很好的理解,他们对此知之甚少,或需要思考得太久才能找到一个有趣的答案。

到目前为止,我已经想出了:

  1. 集合框架类要么使用下面的数组,要么使用更复杂的数据结构。当数组是simply...an数组时
  2. 数组没有方法(没有API),例如Collection类提供的方法。

如果这些假设是错误的,请纠正我,当然还要加上你自己的答案。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-11-14 13:49:15

它们实际上是没有关联的,只是说它们都存储着一组价值观。

从功能的角度来看,两者都可以存储对对象的引用:

  • 数组可以存储原语。
  • 集合可以而不是存储原语(尽管它们可以存储原始包装类,如Integer等)

java新手通常不理解的一个重要区别是可用性和便利性,特别是考虑到集合在需要时会自动扩展:

  • 数组-除非必须使用,否则不要使用它们。
  • 集合-优先使用它们而不是数组。

数组最终是将一组原语/引用存储在一个对象中的唯一方法,但它们是最基本的选项。虽然数组可能会给您一些速度优势,除非您需要超级快的代码,集合是首选的,因为它们有如此多的方便。

票数 35
EN

Stack Overflow用户

发布于 2015-04-02 07:14:06

Array和Collection有5个不同之处,如下所示:

  1. 数组的大小是固定的,而有些集合在本质上是可以增长的。
  2. 数组存储同构数据。集合既存储同构数据,也存储异构数据。
  3. 数组中没有下划线数据结构,而集合具有下划线数据结构。
  4. 建议使用数组来提高性能,而集合则不推荐。
  5. 与集合相比,数组使用更多的内存空间。
票数 12
EN

Stack Overflow用户

发布于 2016-01-18 14:09:23

  1. 数组的长度是固定的,因为集合在本质上是可增长的。
  2. 数组可以存储同构元素,而集合可以同时存储这两个元素。
  3. 如果预先知道大小,请选择数组。
  4. 从性能的角度来看,最好使用数组。
  5. 数组没有现成的方法,而集合有现成的方法。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13361489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档