public static void main(String[] args) {
List<Pojo> list = new ArrayList<>();
list.add(new Pojo(1, "qx1"));
list.add(new Pojo(2, "qx6"));
list.add(new Pojo(3, "qx2"));
list.add(new Pojo(5, "qx5"));
list.add(new Pojo(6, "qx3"));
list.add(new Pojo(4, "qx4"));
List<Object> collect = list.stream().filter(x -> x.getAge() % 2 == 1).map(x -> {
x.setName(x.getName() + "123");
return x;
}).collect(Collectors.toList());
System.out.println(collect);
}
Map<String, qx> map = new HashMap(); map.put("qx5", new qx(5, "启灵")); map.put("qx2", new qx(2, "启灵")); map.put("qx1", new qx(1, "启灵")); map.put("qx3", new qx(4, "启灵")); map.put("qx4", new qx(3, "启灵")); HashSet<String> names = map.entrySet().stream() .filter(x -> check(x.getKey())) .map(x -> x.getValue()) .map(x -> x.getName()) .collect(Collectors.toCollection(HashSet::new)); System.out.println(names);
toMap:
List<String> list = Arrays.asList("qx1-男-22", "qx2-女-21", "qx3-男-25", "qx4-男-265", "qx5-男-24"); //用名称作为key list.stream() .collect(Collectors.toMap(new Function<String, String>() { @Override public String apply(String s) { return s.split("-")[0]; } }, s -> s)); //用名称作为key2 list.stream() .collect(Collectors.toMap(s -> s.split("-")[0], s -> s));
文章展示了如何使用Java8的StreamAPI对Pojo对象列表进行过滤、修改属性并收集到新的列表,以及如何使用toMap方法根据字符串字段创建映射。
5582

被折叠的 条评论
为什么被折叠?



