stream处理list的方式
时间: 2023-11-12 15:43:49 浏览: 21
Stream 是 Java 8 中提供的一种用于处理集合数据的 API,List 可以通过 Stream 进行处理。常见的 List 处理方式有以下几种:
1. 遍历 List 中的元素
List<String> list = Arrays.asList("A", "B", "C");
list.stream().forEach(System.out::println);
2. 对 List 中的元素进行过滤
List<String> list = Arrays.asList("A", "B", "C");
list.stream().filter(s -> s.contains("B")).forEach(System.out::println);
3. 对 List 中的元素进行排序
List<Integer> list = Arrays.asList(3, 1, 2);
list.stream().sorted().forEach(System.out::println);
4. 对 List 中的元素进行映射
List<String> list = Arrays.asList("A", "B", "C");
list.stream().map(String::toLowerCase).forEach(System.out::println);
以上是 Stream 处理 List 的一些常见方式,通过 Stream 可以方便地进行 List 数据的处理和操作。
相关问题
list stream分组处理
在Java 8中,可以使用Stream API对List进行分组处理。下面是一个示例代码:
```java
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class GroupingExample {
public static void main(String[] args) {
List<String> list = Arrays.asList("apple", "banana", "orange", "apple", "banana");
// 使用stream的groupingBy方法对List进行分组
Map<String, Long> result = list.stream()
.collect(Collectors.groupingBy(s -> s, Collectors.counting()));
// 输出分组结果
result.forEach((key, value) -> System.out.println(key + " : " + value));
}
}
```
运行以上代码,将会输出以下结果:
```
apple : 2
banana : 2
orange : 1
```
这段代码使用了`stream`的`groupingBy`方法对List进行分组,然后使用`counting`方法统计每个分组的数量。最后,通过`forEach`方法遍历分组结果并输出。
java list stream filter处理
Java List Stream Filter 是一种用于过滤 List 中元素的方法,它可以根据指定的条件筛选出符合条件的元素。使用 List Stream Filter 可以大大简化代码,提高程序的可读性和可维护性。以下是一个示例代码:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
List<Integer> evenNumbers = numbers.stream()
.filter(n -> n % 2 == 0)
.collect(Collectors.toList());
这段代码会将 numbers 中的偶数筛选出来,存放在 evenNumbers 中。