簡體   English   中英

鍵映射到HashMap中的相同值?

[英]Keys mapping to same values in HashMap?

如標題所示,如果映射中的2個字符串鍵不具有相同的字符串值,則我必須編寫一種方法說為true,否則必須為false。我編寫了以下方法,但是在所有情況下都返回true。會有所幫助。

public static boolean isUnique(Map<String,String> map)
    {
        Iterator<String> iter=map.keySet().iterator();
        while(iter.hasNext())
        {
            String s=iter.next();
            if(map.containsValue(s))
                return false;
        }
        return true;
    }

提前致謝

最簡單的方法是將值放入集合中。 由於集合不能包含重復值,因此,如果集合的大小等於映射的大小,則映射將不包含任何重復的值。

public static boolean areValuesUnique(Map<?,?> map) {
    return new HashSet<>(map.values()).size() == map.size();
}

暫無
暫無

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

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