Java 8新特性Stream API的应用实例
Java 8的Stream API提供了一种新的、优雅的方式来处理集合数据,如列表、数组等。下面是一些应用实例:
- 过滤和选择:
```java
Listfruits = Arrays.asList(“Apple”, “Banana”, “Cherry”);
// 过滤出以字母”A”开头的水果
List
.filter(f -> f.startsWith(“A”)))
.collect(Collectors.toList());
System.out.println(apples); // 输出:[Apple]
2. **分组和聚合**:
```java
Map<String, Integer>> bookSales = new HashMap<>();
bookSales.put("Java", 100);
bookSales.put("Python", 80);
bookSales.put("C++", 60);
// 计算每种语言的销售总金额
Map<String, Integer> totalSalesByLanguage = bookSales.entrySet().stream()
.collect(Collectors.toMap(entry -> entry.getKey(), entry -> entry.getValue() * 100 // 销售金额转换为百位数,便于聚合结果展示 ));
System.out.println(totalSalesByLanguage); // 输出:{Java=1000, Python=800, C++=600}}
- 排序和分页:
```java
Listnumbers = Arrays.asList(5, 2, 9, 4);
// 按降序对数字列表进行排序
numbers.sort((a, b) -> b - a);
System.out.println(numbers); // 输出:[9, 5, 4, 2]]
```
这些例子展示了如何使用Stream API来简化数据处理任务。
还没有评论,来说两句吧...