tx

wangcx

栖迟於一丘,则天下不易其乐
25,955
Java8中 List的去重、过滤、映射、分组、统计、分页 Java8中 List的去重、过滤、映射、分组、统计、分页
List对象集合的简单去重
list = list.stream().distinct().collect(Collectors.toList());
List集合的根据属性(name)去重
list = list.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(()->new TreeSet<>(Comparator.comparing(Student::getName))), ArrayList::new));
List对象集合的简单过滤(过滤为 null 的对象)
list = list.stream().filter(item -> item.getName() != null).collect(Collectors.toList());
List对象集合中获取其中某一属性(weight)的List集合
List<Double> collect = apples.stream().map(Apple::getWeight).collect(Collectors.toList());
List对象集合转换为逗号连接的字符串
String str = list.stream().map(String::valueOf).collect(Collectors.joining(","));
List对象集合中根据对象(Apple)的某一属性(color)进行分组
Map<String, List<Apple>> applesByColor = apples.stream().collect(Collectors.groupingBy(Apple :: getColor));
List对象集合中求和、最大、最小、平均的统计(mapToDouble())
//和
double sum = apples.stream().mapToDouble(Apple::getWeight).sum(); 
//最大
OptionalDouble max = apples.stream().mapToDouble(Apple::getWeight).max(); 
//最小
OptionalDouble min = apples.stream().mapToDouble(Apple::getWeight).min(); 
//平均值
OptionalDouble average = apples.stream().mapToDouble(Apple::getWeight).average(); 
List对象集合的分页(skip()+limit())
List<User> resultList = list.stream().skip(pageSize * (currentPage - 1)).limit(pageSize).collect(Collectors.toList());
53 条评论
user 编辑评论信息
插入图片

隐私评论
  1. @
    TJBDNnWYAEFcKyO 5月15日
    Windows 10 · Chrome 120 · 爱尔兰
    此条为悄悄话,仅发布者可见
  2. @
    TJBDNnWYAEFcKyO 5月15日
    Windows 10 · Chrome 120 · 爱尔兰
    此条为悄悄话,仅发布者可见
  3. @
    mldSjXtL 5月12日
    Windows 10 · Chrome 120 · 柬埔寨
    此条为悄悄话,仅发布者可见
  4. @
    mldSjXtL 5月12日
    Windows 10 · Chrome 120 · 柬埔寨
    此条为悄悄话,仅发布者可见
  5. @
    mldSjXtL 5月12日
    Windows 10 · Chrome 120 · 柬埔寨
    此条为悄悄话,仅发布者可见
  6. @
    mldSjXtL 5月12日
    Windows 10 · Chrome 120 · 柬埔寨
    此条为悄悄话,仅发布者可见
  7. @
    yXfCjlmpnQzLKJZ 5月2日
    Windows 10 · Chrome 120 · 莫桑比克
    此条为悄悄话,仅发布者可见
  8. @
    yXfCjlmpnQzLKJZ 5月2日
    Windows 10 · Chrome 120 · 莫桑比克
    此条为悄悄话,仅发布者可见
  9. @
    nzulyThZOMc 4月29日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  10. @
    nzulyThZOMc 4月29日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  11. @
    nzulyThZOMc 4月29日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  12. @
    cVaQqfpAYmh 4月22日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  13. @
    cVaQqfpAYmh 4月22日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  14. @
    cVaQqfpAYmh 4月22日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  15. @
    cVaQqfpAYmh 4月22日
    Windows 10 · Chrome 120 · 孟加拉
    此条为悄悄话,仅发布者可见
  16. @
    vWlsZxyEM 4月17日
    Windows 10 · Chrome 120 · 美国
    此条为悄悄话,仅发布者可见
  17. @
    vWlsZxyEM 4月17日
    Windows 10 · Chrome 120 · 美国
    此条为悄悄话,仅发布者可见
  18. @
    vWlsZxyEM 4月17日
    Windows 10 · Chrome 120 · 美国
    此条为悄悄话,仅发布者可见
  19. @
    vWlsZxyEM 4月17日
    Windows 10 · Chrome 120 · 美国
    此条为悄悄话,仅发布者可见
  20. @
    DjVqRlkfimZ 4月7日
    Windows 10 · Chrome 120 · 越南
    此条为悄悄话,仅发布者可见