Stream流

本文介绍了Java8中的Stream流概念,它是Lambda表达式引入的新特性,旨在简化数组和集合操作。Stream流的使用包括获取流(如从集合或数组中)、应用中间方法(如filter、map、limit、skip、distinct)和终结方法(如forEach、count、collect)。示例代码展示了如何创建和操作Stream流进行数据处理。
摘要由CSDN通过智能技术生成
  • 什么是Stream流?
    • 在 JDK 8中,得益于 Lambda 带来的函数式编程,引入了一个全新的 Stream 流概念。
    • 目的:简化数组和集合的API使用
  • Stream流使用步骤:
    • 获取数组或集合的Stream流
    • 对Stream流执行中间方法
    • 对Stream流执行终结方法
  • 获取Stream流的方式
    • 对于集合,使用Collection集合stream方法获取
    • 对于数组,使用Arrays工具类的stream方法获取
    • 不管是集合还是数组,都可以使用Stream的静态方法of获取
      获取Stream流
  • Stream流的中间方法
    • 过滤:filter
    • 映射(转换):map
    • 获取前几个元素:limit
    • 跳过前几个元素:skip
    • 去除流中重复的元素:distinct
      中间方法
  • Stream流的终结方法
    • 遍历每个元素:forEach
    • 统计元素个数:count
      终结方法
  • Stream流收集为集合:collection
    在这里插入图片描述
import java.text.ParseException;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Test {
    public static void main(String[] args) throws ParseException {
        String[] arr = {"张百忍","张益达","王菲","张宇","张一山","张益达"};
        List<String> list = new ArrayList<>();
        Collections.addAll(list,"张百忍","张益达","王菲","张宇","张一山","张益达");
        //Stream流的获取
        Stream<String> lS = list.stream();
        Stream<String> aS = Arrays.stream(arr);
        Stream<String> stream = Stream.of(arr);

        //Stream流的中间方法:filter、map、limit、skip、distinct
        Stream<String> s1 = Stream.of(arr).filter(s -> s.matches("张.."));
        Stream<String> s2 = Stream.of(arr).map(s -> "000" + s);
        Stream<String> s3 = Stream.of(arr).limit(2);
        Stream<String> s4 = Stream.of(arr).skip(4);
        Stream<String> s5 = Stream.of(arr).distinct();

        //Stream流的终结方法:forEach、count
        s2.forEach(s -> System.out.println(s));
        System.out.println(s5.count());

        //Stream流收集为集合:collection
        List<String> collect = Stream.of(arr).map(s -> "收集----" + s).collect(Collectors.toList());
        System.out.println(collect);

    }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值