例如:String[] str = {"M1","M1","M1","M2","M3"};
最值得推薦的是答案 - HashSet
。哪種方法或者你有更好的想法?如何計算數組中的唯一元素?只需要想法
0
A
回答
6
除非你想自己實現這個,否則Set
是要走的路。一組將只允許添加獨特的元素,並會自動過濾重複。
HashSet功能的工作原理如下:
計算該對象的散列值。接下來,該集檢查是否有任何具有相同哈希值的對象.equals()
新值。如果是這樣,新值將被忽略。如果不是,則將其添加到該集合中。
如果您將所有內容添加到集合中,然後詢問其大小,您將獲得大量的獨特元素。
+0
+1解釋。 – Xynariz
2
new HashSet(Arrays.asList(str)).size();
1
我更喜歡使用本來已經提供的東西。你的要求是Set
。
你可以做以下 -
Set<String> set = new HashSet<String>(Arrays.asList(str));
set.size();
1
你可以嘗試不用創建臨時表在其他的答案中這也
String[] str = {"M1","M1","M1","M2","M3"};
HashMap<String,String> map=new HashMap<>();
for(String i:str){
map.put(i, i);
}
System.out.println(map.keySet().size());
1
,你也可以使用:
Set<String> set = new HashSet<>();
Collections.addAll(set, str);
int countUnique = set.size();
相關問題
- 1. 計算數組中「後綴」中的唯一元素的有效算法
- 2. 在無需排序的情況下計算數組中的唯一元素
- 3. perl:計算數組中的唯一元素
- 4. 計算列表中的唯一元素
- 5. 檢查數組的第一個元素需要是唯一的
- 6. 在數組中搜索唯一元素的算法?
- 7. MongoDB的。需要計算一個數組
- 8. 如何計算一維數組中重複元素的數量?
- 9. 如何計算集合中的唯一元素?
- 10. C++如何計算向量中的唯一元素?
- 11. 計算數組中相同元素的唯一相鄰對的數量
- 12. 計算數組中的元素數 - C
- 13. 計算數組中元素的個數
- 14. 計算數組中元素的數量
- 15. 計算元組列表中唯一元組的發生率
- 16. 如何在不重新排列數組元素的情況下計算數組中的唯一數字?
- 17. 需要一個計數查詢在訪問,但一列只需要唯一值
- 18. 需要計算的像素
- 19. 如何只計算Kentico中的「頁面」元素的數量
- 20. 計算數組中元素的頻率
- 21. 數組中元素的計算屬性
- 22. 計算數組中的元素
- 23. 計算數組中的不同元素
- 24. 計算數組中的不同元素
- 25. 基於多維數組中的最新元素計算唯一值-PHP
- 26. 計算唯一的組合
- 27. 算法 - 如何快速確定每個組中唯一的元素
- 28. 如何計算Quicksort算法中元素比較的數量?
- 29. 如何從Perl數組中提取我想要的元素?
- 30. 如何計算數組中重複元素的重複次數?
你不喜歡使用哪一部分? – reto
如果沒有任何外部約束(例如,「保留獨特元素的原始順序」,「不使用內建函數」或「不消耗任何額外內存」),HashSet也是我的建議。 – CPerkins