Java 8新特性Stream API实例解析
Java 8引入了一个强大的新特性,叫做Stream API(流式API)。它提供了一种新的处理集合的方式,类似于数据库中的查询。
下面以一些实例来解析Stream API的使用:
- 过滤:保留满足条件的元素。
```java
Listnames = Arrays.asList(“Alice”, “Bob”, “Charlie”);
names.stream() // 创建流
.filter(name -> name.startsWith(“A”))) // 过滤
collect(Collectors.toList()); // 收集并转换为列表
2. **排序**:对元素进行排序。
```java
List<Integer> numbers = Arrays.asList(5, 2, 8, 1, 3));
numbers.stream()
.sorted(Comparator.comparingInt(Integer::getValue)))) // 排序
collect(Collectors.toList());
- 分组和聚合操作:对数据进行汇总,如计数、求平均值等。
```java
MapwordCounts = new HashMap<>();
List
words.stream()
.collect(Collectors.groupingBy(String::toLowerCase), Collectors.counting())) // 分组和计数
intoMap(wordCount -> (wordCount.get(“apple”), wordCount.get(“banana”)))), // 转换为Map格式
entrySet().stream() // 每个Map条目转换为流
collect(Collectors.toMap(Entry::getKey, Entry::getValue))); // 按键收集值
wordCounts.forEach((key, value)) -> System.out.println(key + “: “ + value));
```
以上就是Java 8 Stream API的一些实例解析,希望对你理解这个新特性有所帮助。
还没有评论,来说两句吧...