java 通过map的key模糊匹配map的value集合
需求:
/*
map集合:
key:c_2018-09-26_18729数量:14
key:c_2018-09-27_18730数量:18
key:c_2018-09-27_18731数量:7
key:c_2018-09-27_18729数量:14
*/
需要将时间后面的数字(18729)相同的放到一组,将他们的value值加起来,下面代码实现
把相同的数字放到一组
public class StringTest {
public static void main(String[] args) {
Map cmap = new HashMap();
//抓取量存放 key:c_2018-09-27_18729 value:count
map.put("c_2018-09-27_18729",10);
map.put("c_2018-09-26_18729", 20);
map.put("c_2018-09-27_18730", 11);
map.put("c_2018-09-25_18730", 5);
List lists= getLikeByMap(map,"_18730");
for (Integerval : list) {
System.err.println(list);
}
}
/**
* Map集合模糊匹配
* @param map map集合
* @param keyLike 模糊key
* @return
*/
public static List getLikeByMap(Map map, String keyLike){
List list=new ArrayList<>();
for (Map.Entry entity : map.entrySet()) {
if(entity.getKey().indexOf(keyLike)>-1){
list.add((Integer) entity.getValue());
}
}
return list;
}
}