Java 8 Stream API 常见应用场景解析

原创 浅浅的花香味﹌ 2024-12-09 13:42 74阅读 0赞

Java 8 Stream API 是一种新的处理集合数据的语法糖,它将并行计算和函数式编程结合在一起。以下是一些常见的Stream API应用场景解析:

  1. 过滤:根据某种条件从集合中筛选元素。

    1. List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
    2. List<String> filteredNames = names.stream()
    3. .filter(name -> name.startsWith("C")))
    4. .collect(Collectors.toList());
  2. 映射:将每个元素转换为新的形式。

    1. List<Integer> numbers = Arrays.asList(1, 2, 3, 4);
    2. List<String> stringNumbers = numbers.stream()
    3. .mapToObj(n -> String.valueOf(n)))
    4. .collect(Collectors.toList());
  3. 排序:对集合中的元素进行排序,可以是升序或降序。

    1. List<Integer> numbers = Arrays.asList(3, 1, 4);
    2. List<Integer> sortedNumbers = numbers.stream()
    3. .sorted(Comparator.reverseOrder())) // 降序排列
    4. .collect(Collectors.toList()));
  4. 并集/交集:根据两个集合的元素关系,获取它们的并集或交集。
    ```java
    Set set1 = new HashSet<>(Arrays.asList(“A”, “B”), Arrays.asList(“D”)));

Set set2 = new HashSet<>(Arrays.asList(“C”), “E”)));

// 并集
Set union = set1.stream()
.union(set2) // 或者直接用collect(UnionSet.of()))
.collect(Collectors.toSet()));

// 交集
Set intersection = set1.stream()
.intersects(set2)
.collect(Collectors.toSet()));

System.out.println(“Union: “ + union);
System.out.println(“Intersection: “ + intersection);
```

这些只是Stream API的一部分,Java 8 Stream API提供了大量的操作和API,可以根据实际需求灵活运用。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,74人围观)

还没有评论,来说两句吧...

相关阅读