开发者社区 问答 正文

如何使用Collectors.teeing()来计算一个列表中学生的平均分和总分?

如何使用Collectors.teeing()来计算一个列表中学生的平均分和总分?

展开
收起
花开富贵111 2024-06-20 10:52:28 63 分享 版权
1 条回答
写回答
取消 提交回答
  • 可以使用Collectors.teeing()结合Collectors.averagingInt()和Collectors.summingInt()来计算平均分和总分。例如:

    List<Student> list = Arrays.asList( 
    new Student("唐一", 55), 
    new Student("唐二", 60), 
    new Student("唐三", 90)); 
    String result = list.stream().collect(Collectors.teeing( 
    Collectors.averagingInt(Student::getScore), 
    Collectors.summingInt(Student::getScore), 
    (s1, s2) -> s1 + ":" + s2)); 
    System.out.println(result); // 输出类似 "65.0:205"
    
    2024-06-20 16:00:58
    赞同 展开评论
问答地址: