项目中,有时候要对传输的数据进行加密签名,如MD5,但是这个时候, 但是MD5 签名,有时候需要过滤空值,如下就是过滤空值的工具类, TreeMap 默认升序排列, MD5签名是要进行排序后,才能正确签名的
/**
* 移除空值
*/
public class MapRemoveNullUtil {
/**
* 移除map中空key或者value空值
* @param map
*/
public static void removeNullEntry(Map map){
removeNullKey(map);
removeNullValue(map);
}
/**
* 移除map的空key
* @param map
* @return
*/
public static void removeNullKey(Map map){
Set set = map.keySet();
for (Iterator iterator = set.iterator(); iterator.hasNext();) {
Object obj = (Object) iterator.next();
remove(obj, iterator);
}
}
/**
* 移除map中的value空值
* @param map
* @return
*/
public static void removeNullValue(Map map){
Set set = map.keySet();
for (Iterator iterator = set.iterator(); iterator.hasNext();) {
Object obj = (Object) iterator.next();