簡體   English   中英

數組與java Collection框架中的任何集合之間的差異?

[英]Differences between an array and any collection from the java Collection framework?

正如標題所說,我正在研究“數組與java Collection框架中的任何集合之間的差異”。

認為它的高水平足以為我們中的一些(或許多)提供一些很好的理解,他們對此知之甚少或需要思考太長時間才能得出一個有趣的答案

到目前為止,我想出了:

  1. 集合框架類要么使用下面的數組,要么使用更復雜的數據結構。 當一個數組只是......一個數組
  2. Array沒有方法(沒有API),例如Collection類提供的方法。

如果這些是不正確的假設,請糾正我,當然還要添加你自己的答案

它們實際上是未發布的,只是說它們都存儲了一組價值觀。

從功能的角度來看,雖然兩者都可以存儲對象的引用:

  • 數組可以存儲基元
  • 集合不能存儲基元(盡管它們可以存儲原始包裝類,如Integer等)

一個重要的區別,通常不是新手java程序員所理解的,是可用性和便利性之一,特別是考慮到Collections在需要時自動擴展大小:

  • 數組 - 除非必須 ,否則請避免使用它們
  • 集合 - 優先於數組使用它們

數組最終是在一個對象中存儲一組基元/引用的唯一方法,但它們是最基本的選項。 雖然數組可能會給你一些速度優勢,但除非你需要超快代碼,否則首選集合是因為​​它們有很多便利。

Array和Collection之間有5個不同之處,如下所示:

  1. 數組的大小是固定的,而某些集合本質上是可生長的。

  2. 數組存儲同類數據。 集合存儲同構數據和異構數據。

  3. 在數組中,沒有下划線數據結構,而集合具有下划線數據結構。

  4. 建議使用數組表示性能,而不使用集合。

  5. 與集合相比,數組使用更多的內存空間。

  1. 數組的長度是固定的,因為集合在本質上是可生長的。
  2. 數組可以存儲同類元素,而集合可以存儲兩者。
  3. 如果您事先知道尺寸,請選擇Arrays
  4. 從性能上看,最好采用Arrays
  5. 數組沒有任何現成的方法,而集合有現成的方法。

數組集合之間的差異如下:

  1. 數組的大小是固定的,但集合的大小是動態的。
  2. 關於存儲器陣列不好用,但對於存儲器集合更好用。
  3. 就性能而言,使用陣列更好,但在性能收集方面使用起來並不好。
  4. 數組只能包含同類元素,但集合可以包含同構和異構元素
  5. 數組沒有現成的方法,但集合具有現成的數據結構和方法。
  6. 數組可以包含基元和包裝器對象,但集合只能包含對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM