以下是一些使用 Java 8 Stream 的示例:

  1. 过滤列表中的元素:
List<String> names = Arrays.asList('John', 'Tom', 'Jane', 'Alice');
List<String> filteredNames = names.stream()
                                  .filter(name -> name.startsWith('J'))
                                  .collect(Collectors.toList());
  1. 将列表元素进行映射:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> squares = numbers.stream()
                               .map(number -> number * number)
                               .collect(Collectors.toList());
  1. 对列表进行排序:
List<String> names = Arrays.asList('John', 'Tom', 'Jane', 'Alice');
List<String> sortedNames = names.stream()
                                .sorted()
                                .collect(Collectors.toList());
  1. 对列表进行分组:
List<Person> people = Arrays.asList(
    new Person('John', 25),
    new Person('Tom', 30),
    new Person('Jane', 25),
    new Person('Alice', 30)
);
Map<Integer, List<Person>> peopleByAge = people.stream()
                                               .collect(Collectors.groupingBy(Person::getAge));
  1. 对列表进行统计:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
IntSummaryStatistics stats = numbers.stream()
                                    .mapToInt(Integer::intValue)
                                    .summaryStatistics();
int min = stats.getMin();
int max = stats.getMax();
int sum = stats.getSum();
double average = stats.getAverage();
long count = stats.getCount();

这些示例只是 Stream API 的一小部分,通过使用 Stream API,您可以以更简洁和功能强大的方式处理集合数据。

Java 8 Stream() 实用案例:过滤、映射、排序、分组、统计

原文地址: https://www.cveoy.top/t/topic/qoGK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录