检查地图中的所有值是否相等

Llu*_*nez 2 java map

我需要检查地图中的所有值是否相等.我有一个方法来执行此任务,但想使用库或本机方法.限制:Java 5 + Apache Commons库.

public static boolean isUnique(Map<Dboid,?> aMap){

boolean isUnique = true;
Object currValue = null;
int iteration = 0;

Iterator<?> it = aMap.entrySet().iterator();

while(it.hasNext() && isUnique){
    iteration++;
    Object value = it.next();
    if(iteration > 1){
        if (value != null && currValue == null ||
            value == null && currValue != null ||
            value != null && currValue != null & !value.equals(currValue)) {
            isUnique = false;
        }
    }
    currValue = value;
}
return isUnique;
}
Run Code Online (Sandbox Code Playgroud)

a_h*_*ame 11

这样的事情怎么样:

Set<String> values = new HashSet<String>(aMap.values());
boolean isUnique = values.size() == 1;
Run Code Online (Sandbox Code Playgroud)