Java Stream List 转 Map,以元素对象多个属性组合构建为KEY,元素对象为值


List<FaAdmin> list = Lists.newArrayList();
list.add(new FaAdmin(100L, "a"));
list.add(new FaAdmin(101L, "b"));
list.add(new FaAdmin(102L, "c"));
list.add(new FaAdmin(100L, "a"));

// List对象,转Map
Map<String, FaAdmin> usernameMap = list.stream()
        .collect(Collectors.toMap(eo -> {
            // 以元素对象中的多个属性,进行构建KEY
            return eo.getId() + eo.getUsername();
        }, Function.identity(), (eo1, eo2) -> eo1));

System.out.println(usernameMap);