Stream流中的常用方法_Foreach-Stream流中的常用方法_filter
Stream流中的常用方法_Foreach
流模型的操作很丰富,这里介绍一些常用的API。这些方法可以被分成两种︰
·延迟方法∶返回值类型仍然是Stream,接口自身类型的方法,因此支持链式调用。(除了终结方法外,其余方法均为延迟方法。)
l
。终结方法∶返回值类型不再是Stream接口自身类型的方法,因此不再支持类似stringBuilder那样的链式调用。本小节中,终结方法包括`count和 forEach方法。
逐一处理:forEach
虽然方法名字叫forEach,但是与for循环中的"for-each"昵称不同。
package A_Lian_two.D04;
import java.util.stream.Stream;
public class Demo02Stream_forEach {
    public static void main(String[] args) {
        //获取一个Stream流
        Stream<String> stream = Stream.of("张三", "李四", "王五", "赵六", "田七");
        stream.forEach(name-> System.out.println(name));
    }
}
Stream流中的常用方法_filter
可以通过filter方法将一个流转换成另一个子集流。方法签名∶
stream<T> filter(Predicate<? super T> predicate);
该接口接收一个Predicate函数式接口参数(可以是一个Lambda或方法引用)作为筛选条件。

复习Predicate接口
此前我们已经学习过java.util.stream.Predicate函数式接口,其中唯一的抽象方法为:
Boolean test(T t);
该方法将会产生一个Boolean值结果,代表指定的条件是否满足.如果结果为true,那么Stream流的filter方法将会留用元素;
如果结果为false,那么filter方法将会舍弃元素.
package A_Lian_two.D04;
import java.util.stream.Stream;
public class Demo03Stream_filter {
    public static void main(String[] args) {
        //创建一个Stream流
        Stream<String> stream = Stream.of("张三丰", "张催三", "萨克的", "奥斯丁", "鞋袜");
        //对Stream流中的元素进行过滤,只要姓张的人
        Stream<String> stream1 = stream.filter((String name) -> {
            return name.startsWith("张");
        });
        //遍历stream2流
        stream1.forEach(name-> System.out.println(name));
    }
}
Stream流中的常用方法_Foreach-Stream流中的常用方法_filter的更多相关文章
- Stream流的基本介绍以及在工作中的常用操作(去重、排序以及数学运算等)
		平时工作中,我在处理集合的时候,总是会用到各种流操作,但是往往在处理一些较为复杂的集合时,还是会出现无法灵活运用api的场景,这篇文章的目的,主要是为介绍一些工作中使用流时的常用操作,例如去重.排序和 ... 
- 使用传统的方式遍历集合对集合中的数据进行过滤和使用Stream流的方式遍历集合对集合中的数据进行过滤
		使用传统的方式,遍历集合,对集合中的数据进行过滤 class Test{ public static void main(String[] args){ ArrayList<String> ... 
- 《Kafka Stream》调研:一种轻量级流计算模式
		原文链接:https://yq.aliyun.com/articles/58382 摘要: 流计算,已经有Storm.Spark,Samza,包括最近新起的Flink,Kafka为什么再自己做一套流计 ... 
- C# Stream 和 byte[] 之间的转换(文件流的应用)
		一. 二进制转换成图片 MemoryStream ms = new MemoryStream(bytes); ms.Position = ; Image img = Image.FromStream( ... 
- Java基础-IO流对象之字节流(Stream)
		Java基础-IO流对象之字节流(Stream) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在前面我分享的笔记中,我们一直都是在操作文件或者文件夹,并没有给文件中写任何数据.现 ... 
- Stream01 定义、迭代、操作、惰性求值、创建流、并行流、收集器、stream运行机制
		1 Stream Stream 是 Java 8 提供的一系列对可迭代元素处理的优化方案,使用 Stream 可以大大减少代码量,提高代码的可读性并且使代码更易并行. 2 迭代 2.1 需求 随机创建 ... 
- 流式计算新贵Kafka Stream设计详解--转
		原文地址:https://mp.weixin.qq.com/s?__biz=MzA5NzkxMzg1Nw==&mid=2653162822&idx=1&sn=8c4611436 ... 
- 将String转化成Stream,将Stream转换成String, C# Stream 和 byte[] 之间的转换(文件流的应用)
		static void Main( string[] args ) { string str = "Testing 1-2-3"; //convert string 2 strea ... 
- Esper系列(五)Order by、Limit、构建事件流、Updating an Insert Stream
		Order by 与SQL语法类似类似,默认为升序排列; 注意: 如果order by的子句中出现了聚合函数,那么该聚合函数必须出现在select的子句中. 出现在select中的expression ... 
- 1.java.io包中定义了多个流类型来实现输入和输出功能,
		1.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分 类,按功能分为:(C),如果为读取的内容进行处理后再输出,需要使用下列哪种流?(G) A.输入流和输出流 B ... 
随机推荐
- 三、docker镜像管理
			一.docker镜像管理 1.1.镜像搜索-search 从docker镜像仓库模糊搜索镜像 用法: docker search 镜像关键字 [root@zutuanxue ~]# docker se ... 
- day10-Tomcat02
			Tomcat02 4.IDEA开发JavaWeb工程 4.1开发javaweb工程&配置Tomcat&启动项目 需求:使用idea开发javaweb工程fishWeb,并将网页部署到f ... 
- 解决pip下载速度慢问题
			解决pip下载速度慢的问题 痛点:当我们pip 安装第三方库的时候,由于是访问的国外地址,所以会出现下载很慢!干等..... 解决方案: # 1.在C盘目录-->Users-->用户--& ... 
- JavaScrip基础学习笔记(一)
			一.三元表达式 1.1 什么是三元表达式 由三元运算符组成的式子我们称为三元表达式 1.2 语法结构 条件表达式 ? 表达式1 : 表达式2 1.3 执行思路 如果表达式为结果真 则返回表达式1的值, ... 
- 轻量级领域驱动设计DDD Lite在嵌入式系统重构中的应用
			前言 目前,关于领域驱动设计(Domain Driven Design)DDD的培训,材料,视频都比较多,大家对DDD的一些概念都有所了解,但是在实际使用过程中,有很多的问题.例如 为什么DDD的架构 ... 
- Java标准类
			一个标准的类通常要拥有以下四个组成部分 1.所有的成员变量都要使用private关键字修饰 2.为每一个成员变量编写一对儿Getter/Setter方法 3.编写一个无参数的构造方法 4.编写一个全参 ... 
- C++一个吃豆人小游戏
			C++一个吃豆人小游戏 代码如下 #include <cstdio>#include <iostream>#include <ctime>#include < ... 
- C温故补缺(十二):预编译器与头文件
			预编译器 预编译器就是之前学的预编译指令的执行者 gcc -E test.c -o test.i 生成预编译文件就是翻译#指令 比如#include<stdio.h>就是把整个stdio. ... 
- 将现有源码添加进repo管理
			将现有源码添加进repo管理 适用于大型项内无源码管理(git/repo)的源码 前言  公司在进行一些项目的开发时,从供应商原厂给的code内没有包含任何源码管理的文件.需要多人协同开发,但由于项 ... 
- 解决manjaro无法连接github问题
			修改/etc/hosts文件 1.查看连接ip地址: https://ping.chinaz.com 2.在hosts文件下增加: vim /etc/hosts 需要管理员权限 140.82.113. ... 
