//list包装的实体类 List<User> userList = new ArrayList<>(); User user = new User(); user.setName("张三"); user.setHeight("168"); user.setSex("男"); userList.add(user); userList.add(user); user.setName("小张"); user.setHeight("169"); user.setSex("女"); userList.add(user); userList.add(user); //list包装的实体类按照性别分组 Map<String, List<User>> listMap = userList.stream().collect(Collectors.groupingBy(user1 -> user.getSex())); //list包装的实体类按照性别加姓名分组分组 Map<String, List<User>> listMap2 = userList.stream().collect(Collectors.groupingBy(user1 -> user.getSex() + user1.getName())); //list包装的map List<Map<String, Object>> userMaps = new ArrayList<>(); Map<String, Object> map = new HashMap<>(); map.put("name", "张三"); map.put("height", "168"); map.put("sex", "男"); userMaps.add(map); userMaps.add(map); map.put("name", "小张"); map.put("height", "169"); map.put("sex", "女"); userMaps.add(map); userMaps.add(map); //list包装的map按照性别分组 Map<String, List<Map<String,Object>>> listMap3 = userMaps.stream().collect(Collectors.groupingBy((Map map1) -> (String) map.get("sex"))); //list包装的实体类按照性别加姓名分组分组 Map<String, List<Map<String, Object>>> listMap4 = userMaps.stream().collect(Collectors.groupingBy( (Map map1) -> (String) map.get("sex") + (String) map.get("name"))); //JSONArray JSONArray jsonArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("name", "张三"); json.put("height", "168"); json.put("sex", "男"); jsonArray.add(json); jsonArray.add(json); json.put("name", "小张"); json.put("height", "169"); json.put("sex", "女"); jsonArray.add(json); jsonArray.add(json); //JSONArray包装的JSONObject按照性别分组 Map<String,List<JSONObject>> listMap5 = jsonArray.stream().collect(Collectors.groupingBy(jsonObject -> ((JSONObject)jsonObject).getSring("name"), Collectors.mapping(jsonObject -> (JSONObject)jsonObject, Collectors.toList())));
关于java里面的list数据如何分组?
最新推荐文章于 2024-04-27 17:30:34 发布