跳轉至內容

聚合

100% developed
來自華夏公益教科書,開放的書籍,開放的世界

導航 聚合 主題: v  d  e )
主題:

在前面的章節中,我們發現了 陣列。陣列儲存一組基本型別。要對物件進行分組,或者引用一組物件,我們可以使用 Java 聚合類。有兩個主要的介面,分別是 java.util.Collectionjava.util.Map。這些介面的實現不可互換。

java.util.Collection 介面的實現用於對簡單的 Java 物件進行分組。

示例
我們可以將醫院中所有患者分組到一個 “患者” 集合中。

java.util.Map 介面的實現用於表示 “鍵” 和 “值” 物件之間的對映。對映表示一組 “鍵” 物件,其中每個 “鍵” 物件都對映到一個 “值” 物件。

示例
對於每個患者,都只有一名主治護士分配。這種關聯可以透過 “患者-護士” 對映來表示。

當您需要一次訪問所有專案時,集合更好。當您需要定期隨機訪問專案時,對映更好。

在選擇特定的集合實現之前,請提出以下問題

我的集合可以包含相同的元素嗎,即允許重複嗎?

我的集合可以包含 null 元素嗎?

集合應該保持元素的順序嗎?順序在任何方面都很重要嗎?

您想如何訪問元素?透過索引、鍵還是隻用迭代器?

集合是否需要同步?

從效能的角度來看,哪個需要更快,更新還是讀取?

從使用的角度來看,哪個操作會更頻繁,更新還是讀取?

一旦您瞭解了您的需求,就可以選擇現有的實現。但首先確定您需要的是 Collection 還是 Map

請注意,以上關聯是顯式的。物件本身不知道/不包含有關它們是否參與關聯的資訊。但是,在簡單的 Java 物件之間建立顯式關聯是使用聚合/集合類的主要思想。


華夏公益教科書