集合数据日常操作汇总
入参类型
Map<String, String> userNameToDisplayNameMap,List<Map<String, Object>> resultList, List<Map<String, Object>> mapList
使用stream去掉空数据
mapList = mapList.stream()
.filter(sprintData -> sprintData.get("disPlayName") != null)
.collect(Collectors.toList());
List<Map<String, Object>> taskList
List<String> elementsToRemove = new ArrayList<>();
elementsToRemove.add("a");
elementsToRemove.add("b");
elementsToRemove.add("c");
//将a,b,c三个元素从集合中剔除
taskList = taskList.stream().filter(a -> !elementsToRemove.contains(a.get("w").toString())).collect(Collectors.toList());
去除重复数据
taskList = taskList.stream().distinct().collect(Collectors.toList());
排序
taskList = taskList.stream().sorted(Comparator.comparing(s -> s.get("q").toString().equals("兔子"))).collect(Collectors.toList());
将一个集合中的某个元素取出来组成新的集合
ArrayList<Student> list = new ArrayList<>();
Student one = new Student("一", 1);
Student two = new Student("二", 2);
Student three = new Student("三", 3);
list.add(one);
list.add(two);
list.add(three);
List<String> nameList = list.stream().map(Student::getName).collect(Collectors.toList());
时间判断
Date date = new Date();
try {
Date completedDate = sdf.parse(completedTime);
if (date.after(completedDate)) {
exceptionResult.append("没有按照时间完成,");
}
} catch (ParseException e) {
logger.error("时间转化异常:{}", e);
}
浙公网安备 33010602011771号