一尘不染

数组与java Collection框架中的任何集合之间的区别?

java

如标题所示,我正在研究“数组与Java Collection框架中的任何集合之间的区别”。

认为它足够高,可以使我们中的一些(或许多)对此了解得很少,或者需要考虑的时间太长,无法得出有趣的答案

到目前为止,我想出了:

  1. 收集框架类要么在下面使用数组,要么使用更复杂的数据结构。当一个数组只是…一个数组
  2. Array没有方法(没有API),例如Collection类提供的方法。

如果这些是错误的假设,请纠正我,当然添加您自己的答案


阅读 318

收藏
2020-12-03

共1个答案

一尘不染

它们几乎没有关联,只是说它们都存储了一组值。

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

  • 数组可以存储原语
  • 集合 不能 存储基元(尽管它们可以存储基元包装器类,例如Integeretc)

刚接触Java的程序员通常不理解的一个重要区别是可用性和便利性之一,尤其是考虑到Collections在需要时会自动扩展大小:

  • 数组-除非 必须 ,否则避免使用它们
  • 集合-优先于数组使用它们

数组最终是在一个对象中存储一组基元/引用的唯一方法,但是它们是最基本的选择。尽管数组可能会为您带来一些速度优势,但除非您 需要
超快速代码,否则首选Collections,因为它们具有很多便利。

2020-12-03