使用lambda语法对对象集合 统计属性相同的个数大于2的数据

lambda java 文章 2023-01-06 17:37 1576 0 全屏看文

AI助手支持GPT4.0

import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<ExcelInput> inputs = getExcelInputs();

        // 使用lambda表达式和Java Stream API统计getExcelA属性相同的个数
        Map<String, Long> countByExcelA = inputs.stream()
            .collect(Collectors.groupingBy(ExcelInput::getExcelA, Collectors.counting()));

        // 使用lambda表达式筛选统计结果
         Map<String, Long> result = countByExcelA.entrySet().stream()
            .filter(entry -> entry.getValue() > 2)
            .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
    }

    private static List<ExcelInput> getExcelInputs() {
        // 返回ExcelInput对象的集合
    }
}


-EOF-

AI助手支持GPT4.0