Stream流中的常用方法
count
package com.yang.Test.StreamStudy;
import java.util.stream.Stream;
/**
* 统计荷属:count
* 正如旧集合Collection当中的size方法一样,流提供count方法来数一数其中的元素个数
* long count();
* 该方法返回一个long的值表示元素的个数(不再像旧集合那用是int值)
*/
public class CountStudy {
public static void main(String[] args) {
Stream<String> stream = Stream.of("张无忌", "张三丰", "周芷若");
// System.out.println(stream.count());
long count = stream.filter(s -> {
return s.startsWith("张");
}).count();
System.out.println(count);
}
}
运行结果:

limit
取用前几个:limit
limit方法可以对流进行截取,只取用前n个。方法签名:
Stream limit(long maxSize);
参数是一个Long类型,如果集合当前长度大于参数则进行截取;否则不进行操作。基本使用:

代码:
package com.yang.Test.StreamStudy;
import java.util.stream.Stream;
/**
* limit方法可以对流进行截取,只取用前n个。方法签名:
* Stream<T> limit(long maxSize);
* 参数是一个Long类型,如果集合当前长度大于参数则进行截取;否则不进行操作。基本使用:
*/
public class LimitStudy {
public static void main(String[] args) {
Stream<String> stream = Stream.of("张三", "李四", "王五", "赵六", "田七");
stream.limit(4).forEach(s -> System.out.println(s));
}
}
运行结果:

skip
跳过前几个:skip
如果希望跳过前几个元素,可以使用skip方法获取一个截取之后的新流
String skip(long n);
如果流当前的长度大于n,则跳过前n个;否则将会得到一个长度为0的空流。基本使用:

代码实现:
package com.yang.Test.StreamStudy;
import java.util.stream.Stream;
/**
* 如果希望跳过前几个元素,可以使用skip方法获取一个截取之后的新流
* String<T> skip(long n);
* 如果流当前的长度大于n,则跳过前n个;否则将会得到一个长度为0的空流
*/
public class SkipStudy {
public static void main(String[] args) {
//获取一个Stream流
String[] arr = {"张三", "李四", "王五", "赵六", "田七"};
Stream<String> stream = Stream.of(arr);
stream.skip(3).forEach(s -> System.out.println(s));
}
}

运行结果:

concat
组合:concat
如果有两个流,希望合并称为一个流,那么可以使用Stream接口的静态方法concat:
static Stream concat(Stream<? extends T> a,Stream<? extends T> b)
这是一个静态方法,与java.lang.String当中的concat方法是不同的
代码实现:
package com.yang.Test.StreamStudy;
import java.util.stream.Stream;
public class ConcatStudy {
public static void main(String[] args) {
Stream<String> streamA = Stream.of("张三");
Stream<String> streamB = Stream.of("李四");
Stream<String> result = Stream.concat(streamA, streamB);
result.forEach(s -> System.out.println(s));
}
}
运行结果:

Stream流中的常用方法的更多相关文章
- Stream流的特点_只能使用一次和Stream流中的常用方法_map
Stream流的特点_只能使用一次 public class FilterStudy04 { public static void main(String[] args) { //创建一个Stream ...
- Stream流中的常用方法foeEach和Stream流中的常用方法filter
延迟方法:返回值类型仍然是Stream接口自身类型的方法,因此支持链式调用.(除了中介方法外,其余方法均为延迟方法) 终结方法:返回值类型不再是Stream接口自身类型的方法,因此不再支持类似Stri ...
- JDK 8 中Stream流中的去重的方法
JDK 8 中Stream流中去重的方法 1.简单的去重,可以使用distinct()方法去重,该方法是通过比较equals和hashcode值去去重, 2.复杂的去重, 例如,在一个JavaBean ...
- 【JDK8】JDK 8 中Stream流中的去重的方法
JDK 8 中Stream流中去重的方法 1.简单的去重,可以使用distinct()方法去重,该方法是通过比较equals和hashcode值去去重, 2.复杂的去重, 例如,在一个JavaBean ...
- Stream流思想和常用方法
一.IO流用于读写:Stream流用于处理数组和集合数据: 1.传统集合遍历: 2.使用Stream流的方式过滤: 其中,链式编程(返回值就是对象自己)中,filter使用的是Predicate函数式 ...
- node.js中stream流中可读流和可写流的使用
node.js中的流 stream 是处理流式数据的抽象接口.node.js 提供了很多流对象,像http中的request和response,和 process.stdout 都是流的实例. 流可以 ...
- java中的Stream流
java中的Stream流 说到Stream便容易想到I/O Stream,而实际上,谁规定"流"就一定是"IO流"呢?在Java 8中,得益于Lambda所带 ...
- JAVA-基础(Stream流)
说起stream流大家的第一反应是io,但是实际上谁规定流一定是存在io包里呢?在java8中得益于Lambda表达式的函数式编程,引入了一个全新的概念,stream. 1.优势? 在java8之前我 ...
- ASP.NET Core MVC中Controller的Action如何直接使用Response.Body的Stream流输出数据
在ASP.NET Core MVC中,我们有时候需要在Controller的Action中直接输出数据到Response.Body这个Stream流中,例如如果我们要输出一个很大的文件到客户端浏览器让 ...
随机推荐
- 经过一个多月的等待我有幸成为Spring相关项目的Contributor
给开源项目尤其是Spring这种知名度高的项目贡献代码是比较难的,起码胖哥是这么认为的.有些时候我们的灵感未必契合作者的设计意图,即使你的代码十分优雅. 我曾经给Spring Security提交了一 ...
- Google Summer of Code谷歌编程之夏活动流程全解析(上)
本期由尔等同学来对话Casbin罗杨老师,为大家介绍开源及GSoC活动流程. > 罗杨:GSoC 2013.2015学生.GSoC期间在Nmap开源社区作为主力开发了Windows平台网络抓包工 ...
- 手动验证 TLS 证书
证书结构 我们现在使用的 TLS 证书的标准是 X.509,版本号为 V3.版本号可从证书的 Version 字段看到. 根据 RFC 3280 定义的证书结构,证书由三个部分组成: 证书主体(TBS ...
- 一条Sql的执行过程
一条sql内部是如何执行的: 学习MySQL实战45专栏 sql中的内部执行图: 可以分为两部分:server和存储引擎 server层包含: 连接器.分析器.优化器.执行器,涵盖了MySQL大多数核 ...
- 使用CSS实现《声生不息》节目Logo
声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 背景 <声生不息> 是芒果TV.香港电视广播有限公司和湖南卫视联合推 ...
- C语言函数调用栈
C语言函数调用栈 栈溢出(stack overflow)是最常见的二进制漏洞,在介绍栈溢出之前,我们首先需要了解函数调用栈. 函数调用栈是一块连续的用来保存函数运行状态的内存区域,调用函数(calle ...
- arts-week9
Algorithm 521. Longest Uncommon Subsequence I - LeetCode Review 如何搭建一个私有的CDN? 大部分情况下,我们使用市场上现有的 CDN ...
- linux篇-xshell连接突然报Connection closed by foreign host.
1问题描述报错 Connection closed by foreign host. Disconnected from remote host(yaoGS) at 155513. 2登入虚拟机 在l ...
- fpn(feature-Pyramid-network)学习笔记
FPN(特征金字塔网络)学习笔记 论文 在物体检测里面,有限计算量情况下,网络的深度(对应到感受野)与 stride 通常是一对矛盾的东西,常用的网络结构对应的 stride 一般会比较大(如 32) ...
- 「JOISC 2019 Day4」蛋糕拼接 3
loj 3039 NKOJ Description \(n\)个蛋糕,每个蛋糕有\(w_i,h_i\).选\(m\)个蛋糕满足\(\sum\limits_{j=1}^mw_{k_j}-\sum\lim ...