展开全部
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import org.apache.commons.collections4.map.LinkedMap;
public class Test030 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Map m = new LinkedMap();
m.put("1", "abc");
m.put("2", "abc");
m.put("3", "kjs");
m.put("4", "abc");
m.put("5", "kjs");
System.out.println("before: " + m);
removeDuplicate(m);
System.out.println("after: " + m);
}
private static void removeDuplicate(Map m) {
Set values = new HashSet();
for (Iterator> it = m.entrySet().iterator(); it
.hasNext();) {
Entry e = it.next();
if(values.contains(e.getValue())){
it.remove();
}else{
values.add(e.getValue());
}
}
}
}
写的时候没有注意, 如果jdk中没有linkedMap, 那么请引入62616964757a686964616fe58685e5aeb931333335316438commons的collections包
主要是HashMap不保证顺序