总结项目里使用Java8新特性对List的数据处理(用的比较多的)。
Map<String, List<T>> yearData = allData.stream().collect(Collectors.groupingBy(T::getYear));
List<T> filterList = appleList.stream().filter(a -> a.getName().equals("YC")).collect(Collectors.toList());
List<T> filterList = dayVoList. stream().filter(a -> a.getYEAR().equals(item)).collect(Collectors.toList()) .stream().filter(a -> a.getPrice() != "0" && a.getPrice() != "0.0").collect(Collectors.toList());
List<String> result = Stream.of(Lists.newArrayList("A", "B", "C"), Lists.newArrayList("A", "B")) .flatMap(Collection::stream).distinct().collect(Collectors.toList());
List<String> result = Stream.of(Lists.newArrayList("A", "B", "C"), Lists.newArrayList("A", "B")) .flatMap(Collection::stream).collect(Collectors.toList());
List<T> api_list = apiData .stream().sorted(Comparator.comparing(T::getID).reversed()).collect(Collectors.toList());
List<T> api_list = apiData .stream().sorted(Comparator.comparing(T::getID).collect(Collectors.toList());
List<T> primaryFilterData = apiData.stream().collect( Collectors.collectingAndThen( Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(T::getName))), ArrayList::new));
原文:https://www.cnblogs.com/zysnba/p/14602358.html