1 User实体类
public class User {
private Long userId;
/**
* 用户名(登录)
*/
private String username;
/**
* 年龄
*/
private int age;
/**
* 性别
*/
private int sex;
/**
* 密码
*/
private String password;
}
2 单字段计数
//统计各年龄个数
List<User> userList = new ArrayList<>();
//方法引用实现
Map<Integer, long> ageCountMap = userList.stream().collect(Collectors.groupingBy(User::getAge) , Collectors.counting());
//lambda表达式实现
Map<Integer, long> ageCountMap2 = userList.stream().collect(Collectors.groupingBy(x->x.getAge() , Collectors.counting()));
3 多字段计数
//统计年龄和性别相同个数
List<User> userList = new ArrayList<>();
//lambda表达式实现
Map<String, long> ageCountMap = userList.stream().collect(Collectors.groupingBy(x -> x.getAge() + "#" + x.getSex() , Collectors.counting()));