Java Lambda
- 输出符合表达式的每一个对象
employees.stream().filter(p -> p.getAge() > 21).forEach(System.out::println);
- 返回一个符合表达式的集合
employees.stream().filter(predicate).collect(Collectors.<Employee>toList());
- 返回符合表达式的集合的第一个对象
employees.stream().filter(p -> p.getAge() > 21).findFirst();
- 抽取对象中所有的id的集合
employees.stream().map(Employee::getId).collect(Collectors.toList());
// 排序 正序
employees.stream().map(Employee::getId).sorted(Comparator.comparing(Employee::id))
.collect(Collectors.toList());
// 排序 倒序
employees.stream().map(Employee::getId).sorted(Comparator.comparing(Employee::id).reversed())
.collect(Collectors.toList());
- 按顺序返回
list.stream().collect(Collectors.groupingBy(StatusStatisticVo::getType, LinkedHashMap::new,Collectors.toList()));
- List转Map
list.stream().collect(Collectors.toMap(StatItem::getStatus, StatItem::getValue, (oldValue, newValue) -> newValue));
- 获取id为3的元素对象,如果不存在返回null。
int studentId = 3;
Student student = students.stream().filter(o -> o.getId() == studentId).findAny().orElse(null);
JS Lambda
.find(o => o.id === id) 返回一个数据[]
.filter(o => o.id === id) 返回一组数据{[]}
.map(o => o.id) 返回一个数组[]
// 去重
data.map((item) => newArr.findIndex(({ customerId }) => customerId === item.customerId) === -1 && newArr.push(item))
数字转字符串 toString()
字符串转数字 - 0
数组转字符串 .join(‘,’)
字符串转数组 .split(‘,’)
object转字符串 JSON.stringify(data)
字符串转object JSON.parse(data)
标签:Java,stream,Collectors,employees,collect,Employee,id,Lambda
From: https://www.cnblogs.com/shijiangtao/p/17124673.html