3 回答

TA貢獻1802條經驗 獲得超10個贊
你可以這樣做:
Map<String, Set<String>> category = new HashMap<>();
Set<String> set = new HashSet<>();
int largest = 0;
for(String d : category.keySet()) {
if (category.get(d).size() > largest) {
largest = category.get(d).size();
set = category.get(d);
}
}
return set;

TA貢獻1796條經驗 獲得超7個贊
雖然其他答案顯示了如何修復代碼,但這是在單個語句中執行此操作的另一種方法:
Set<String> largestSet = category.values().stream() .max(Comparator.comparingLong(Set::size)) .orElse(null);

TA貢獻1780條經驗 獲得超4個贊
你可以試試這個
Map<String, Set<String>> category = new Hashmap<String, Set<String>>();
int largest = 0;
Set<String> largeSet = new HashSet<String>();
for(String d : category.keySet()) {
if (category.get(d).size() > largest)
largest = category.get(d).size();
largeSet = category.get(d);
}
return largeSet;
添加回答
舉報