假設您需要在Collection
中存儲/檢索項目,不需要關注訂購,並且允許重複,您使用的是什麼類型的Collection
?默認集合類型
默認情況下,我一直使用ArrayList
,但我記得在某處執行Queue
實施可能是一個更好的選擇。 A List
允許在任意位置添加/檢索/移除項目,這導致性能損失。由於Queue
不提供此功能,因此在不需要此功能時理論上應該更快。我認識到所有關於表現的討論都有些沒有意義,唯一真正重要的是測量。不過,我很想知道其他人使用Collection
時,他們不關心訂購,並允許重複,和爲什麼?
在「LinkedList」上搜索可能很昂貴,或者在特定索引處獲取值 - 你需要每次遍歷列表。 – 2010-08-18 08:49:21
那麼,在LinkedList中搜索O(n),就像在ArrayList中搜索一樣,因爲這些都沒有排序。如前所述,我通過Collection接口使用它們,因此我無法訪問索引訪問方法(在這種情況下,它是一個功能)。 – Riduidel 2010-08-18 09:30:05