理解Java 8的Stream API并提供实践案例
Java 8引入了Stream API,这是一种处理集合的新方式。它将传统的数据操作(如循环、查询等)转换为可读性强,易于维护的流式操作。
以下是一些Stream API的实践案例:
过滤:从一个列表中筛选出满足特定条件的元素。
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
List<String> filteredNames = names.stream()
.filter(name -> name.startsWith("C")))
.collect(Collectors.toList());
排序:对列表中的元素进行升序或降序排列。
List<Integer> numbers = Arrays.asList(5, 3, 9, 1));
Collections.sort(numbers, Collections.reverseOrder()); //降序排列
System.out.println(numbers);
分组和聚合:将列表中的元素按某种规则分组,并对每个分组进行某些计算。
List<String> fruits = Arrays.asList("Apple", "Banana", "Cherry", "Apple");
Map<String, Integer> fruitCounts = fruits.stream()
.collect(Collectors.groupingBy(Fruit::getName, Collectors.counting())));
System.out.println(fruitCounts);
以上案例展示了Stream API的强大功能,包括过滤、排序、分组和聚合等。
还没有评论,来说两句吧...