Java8新特性 - Stream - 01 - Stream的概述

1.什么是Stream

Stream 是Java中对集合操作(过滤、查找、映射......)的一种更为简便的封装。
使用Stream可以让代码更为简洁。

2.Stream的使用注意点

1.Stream的方法分为【终结方法】和【非终结方法】
【终结方法】:方法的返回值类型不再是Stream类型,不再支持链式调用,例如 forEach()方法;
【非终结方法】: 方法的返回值类型仍然是Stream类型,可以继续进行链式调用,例如 filter()方法。
2.每个Stream对象,只能被使用一次,使用完成后就会被关闭,再次使用时会抛出异常。
3.Stream对象如果不调用【终结方法】的话,中间的过程是不会执行的!(非常的关键)
4.Stream中比较经常的用到Lambda的内容,所以建议各位coder在使用Stream的时候先对Lambda表达式进行学习。

3.Stream的初体验

下面的案例代码中,体会一下:
1.Stream中数据的过滤操作:filter()方法
2.Stream中的数据遍历操作 : forEach()方法
3.不调用【终结方法】则中间的过程不会执行的特性

3.1 案例代码

package com.northcastle.I_stream;

import java.util.stream.Stream;

public class Application {
    public static void main(String[] args) {
        // 如果不调用终结方法,则中间的过程不会执行 演示
        Stream.of("a","b","cc").filter(s ->{
            System.out.println("==> "+s); // 打印一下这个传入的值
            return s.length() > 1;
        });
        System.out.println("我大胆猜测,上面的不会执行,没有输出");
        System.out.println("=======================");
        System.out.println("我大胆猜测,下面的会正常输出");
        Stream.of("11","22","333").filter(s ->{
            System.out.println("==> "+s); // 打印一下这个传入的值
            return s.length() > 1;
        }).forEach(System.out::println);
    }
}

3.2 执行结果

在这里插入图片描述

4.完成

Congratulations!
You are one step closer to success!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值