Java Stream流常用方法列举

前言

如果你看不懂本文的 ->或::符号,请前往Java Lambda表达式和方法引用-CSDN博客

->代表了Lambda表达式,::代表了方法引用,它们都是能够简化遍历的一种方法

 filter(Predicate):用于过滤流中的元素

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6); 
List<Integer> evenNumbers = numbers.stream() 
                                   .filter(num -> num % 2 == 0)
                                   .collect(Collectors.toList()); 
System.out.println(evenNumbers); // Output: [2, 4, 6]

map(Function):用于对流中的每个元素应用函数

List<String> names = Arrays.asList("Alice", "Bob", "Charlie"); 
List<Integer> nameLengths = names.stream() 
                                 .map(String::length) 
                                 .collect(Collectors.toList()); 
System.out.println(nameLengths); // Output: [5, 3, 7]

forEach(Consumer):对流中的每个元素执行操作

List<String> fruits = Arrays.asList("Apple", "Banana", "Orange"); 
fruits.stream()
      .forEach(System.out::println); 
// Output: // Apple // Banana // Orange

collect(Collectors):将流中的元素收集到集合或其他数据结构中

List<String> fruits = Arrays.asList("Apple", "Banana", "Orange"); 
String result = fruits.stream() 
                      .collect(Collectors.joining(", ")); 
System.out.println(result); // Output: Apple, Banana, Orange

reduce(BinaryOperator):对流中的元素进行归约操作

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); 
int sum = numbers.stream() 
                 .reduce(0, Integer::sum); 
System.out.println(sum); // Output: 15

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值