社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
/**
* 评价信息对象
*/
@Data
@AllArgsConstructor
class Evaluation {
/**
* 考查模块
*/
private String inspectionModule;
/**
* 考察点
*/
private String inspectionPoint;
/**
* 评价备注
*/
private String remark;
}
public static void main(String[] args) {
List<Evaluation> list = new ArrayList<>() {{
add(new Evaluation("课上表现", "专注力", "上课的时候很专注"));
add(new Evaluation("课上表现", "表达能力", "表达能力还可以"));
add(new Evaluation("逻辑思维", "清晰度", "思路比较清晰"));
add(new Evaluation("逻辑思维", "敏捷程度", "反应有点迟钝"));
add(new Evaluation("课后作业", "卷面分", "卷面干净整节"));
add(new Evaluation("课后作业", "正确率", "大约90%的样子"));
}};
list.forEach(System.out::println);
}
public static void main(String[] args) {
List<Evaluation> list = new ArrayList<>() {{
add(new Evaluation("课上表现", "专注力", "上课的时候很专注"));
add(new Evaluation("课上表现", "表达能力", "表达能力还可以"));
add(new Evaluation("逻辑思维", "清晰度", "思路比较清晰"));
add(new Evaluation("逻辑思维", "敏捷程度", "反应有点迟钝"));
add(new Evaluation("课后作业", "卷面分", "卷面干净整节"));
add(new Evaluation("课后作业", "正确率", "大约90%的样子"));
}};
list.forEach(System.out::println);
Map<String, List<Evaluation>> map = list.stream().collect(Collectors.groupingBy(Evaluation::getInspectionModule));
map.forEach((s, evaluations) -> System.out.println(s + ": " + evaluations));
}
System.out.println(map.getClass().getSimpleName());
public static void main(String[] args) {
List<Evaluation> list = new ArrayList<>() {{
add(new Evaluation("课上表现", "专注力", "上课的时候很专注"));
add(new Evaluation("课上表现", "表达能力", "表达能力还可以"));
add(new Evaluation("逻辑思维", "清晰度", "思路比较清晰"));
add(new Evaluation("逻辑思维", "敏捷程度", "反应有点迟钝"));
add(new Evaluation("课后作业", "卷面分", "卷面干净整节"));
add(new Evaluation("课后作业", "正确率", "大约90%的样子"));
}};
list.forEach(System.out::println);
Map<String, List<Evaluation>> map = list.stream().collect(Collectors.groupingBy(Evaluation::getInspectionModule, LinkedHashMap::new, Collectors.toList()));
map.forEach((s, evaluations) -> System.out.println(s + ": " + evaluations));
}
public static void main(String[] args) {
//创建测试数据
List<Evaluation> list = new ArrayList<>() {{
add(new Evaluation("课上表现", "专注力", "上课的时候很专注"));
add(new Evaluation("课上表现", "表达能力", "表达能力还可以"));
add(new Evaluation("逻辑思维", "清晰度", "思路比较清晰"));
add(new Evaluation("逻辑思维", "敏捷程度", "反应有点迟钝"));
add(new Evaluation("课后作业", "卷面分", "卷面干净整节"));
add(new Evaluation("课后作业", "正确率", "大约90%的样子"));
}};
//打印集合
list.forEach(System.out::println);
//根据考察模块进行数据聚合
Map<String, List<Evaluation>> map = list.stream().collect(Collectors.groupingBy(Evaluation::getInspectionModule, LinkedHashMap::new, Collectors.toList()));
//打印map实现类
System.out.println(map.getClass().getSimpleName());
//打印聚合后的数据
map.forEach((s, evaluations) -> System.out.println(s + ": " + evaluations));
//数据可读性优化
StringBuilder msg = new StringBuilder();
map.forEach((s, evaluations) -> {
msg.append(s).append(":rn");
evaluations.forEach(inspectDetail -> msg.append(inspectDetail.getInspectionPoint()).append(": ")
.append(inspectDetail.getRemark()).append("rn"));
});
System.out.println(msg);
}
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!