[英]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.