簡體   English   中英

java-在集合中存儲唯一項

[英]java - Storing unique items in a collection

我有一個循環遍歷項目集合,並且僅在新集合中存儲唯一項目。 對於新的唯一項集合,我主要選擇LinkedHashSet數據結構。 但是另一種方法是擁有一個ArrayList並調用contains方法來檢查ArrayList已經包含該項目。 哪一個更快,開銷卻更少?

我建議使用LinkedHashSet 它是根據您的需要而制成的。 每次需要插入某些內容時搜索整個ArrayList執行將非常緩慢(O(n) every time)) 您可以使用contains方法,但是它仍然比插入LinkedHashSet要慢得多,因為它在后台是O(n) 為了非常准確地了解性能,您需要仔細檢查一下大小和操作。 就像您需要插入幾次然后讀很多次一樣, ArrayList可能會更好。 但是,如果您要插入大量內容並且讀取較少的時間,則LinkedHashSet會快得多。

暫無
暫無

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

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