
top.hmtools.collection.MapTools Maven / Gradle / Ivy
package top.hmtools.collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;
import top.hmtools.base.StringTools;
/**
* MAP操作相关工具类
* @author Hybomyth
* 创建日期:2016-12-12上午9:28:47
*/
public class MapTools {
/**
* 获取字典排序的字符串
* @param param
* @param k_v 键值对之间的连接符,默认:=
* @param i_i 成员数据之间的连接符,默认:&
* @return
*/
public static String getOrderDictStr(TreeMap param,String k_v,String i_i){
StringBuffer sb_result = new StringBuffer();
if(StringTools.isBlank(k_v)){
k_v = "=";
}
if(StringTools.isBlank(i_i)){
i_i = "&";
}
try {
Set> param_se = param.entrySet();
Iterator> param_ite = param_se.iterator();
while(param_ite.hasNext()){
Entry item = param_ite.next();
String key = item.getKey();
String value = item.getValue();
sb_result.append(key+k_v+value);
if(param_ite.hasNext()){
sb_result.append(i_i);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return sb_result.toString();
}
/**
* 获取过滤后的map
* @param sourceMap 需要过滤的map数据
* @param filters 用于过滤的key列表
* @return
*/
public static Map getFilterMap(Map sourceMap,List filters){
Map result = new HashMap();
try {
Set> entrySet = sourceMap.entrySet();
Iterator> iterator = entrySet.iterator();
while(iterator.hasNext()){
Entry item = iterator.next();
T key = item.getKey();
E value = item.getValue();
if(filters != null && filters.size()>0){
if(!filters.contains(key)){
result.put(key, value);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
/**
* 将其它 Map 的实现类 转换为 treemap
* @param map
* @return
*/
public static TreeMap getTreeMap(Map map){
TreeMap result = new TreeMap();
try {
Set> map_es = map.entrySet();
Iterator> map_ite = map_es.iterator();
while(map_ite.hasNext()){
Entry item = map_ite.next();
result.put(item.getKey(), item.getValue());
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
/**
* 遍历打印map
* @param map
*/
public static void println(Map map) {
for(Entry item:map.entrySet()){
System.out.println("(key)"+item.getKey()+" ------->> (value)"+item.getValue());
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy