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流中,例如如果我们要输出一个很大的文件到客户端浏览器让 ...
随机推荐
- Linux嵌套目录权限的比较探究
在/tmp目录下新建一个嵌套目录,名字分别为test_0.test_1.test_2.在test_2目录下新建普通文件,名为tryme.设置test_0和test_2的权限为777,设置test_1的 ...
- 好客租房12-JSX的注意点
1.4注意点 1React元素的属性名使用驼峰式命名法 2特殊属性名 class-className for->htmlFor 3没有子节点可以用单标签表示 4使用小括号包裹jsx const ...
- Linux系统执行命令方法
现在我们无论是工作中还是学习中很多情况下用到Linux系统,当我们需要在C#代码中调用类似与cmd窗口执行命令时候,就需要用到此方法 public static Process CommitComma ...
- js颜色调试器
1 /* ColorTestViewer 颜色调试器 2 3 attribute: 4 onchange: Function; //颜色改变回调; 默认null 5 6 //以下属性不建议直接修改 7 ...
- java-去除html中的标签或者元素属性(正则表达式/jsoup)
业务场景: 如一篇使用富文本编辑器编辑的新闻稿,需要在列表页面截取前200字作为摘要,此时需要去除html标签,截取真正的文本部分. /** * 删除Html标签 */public static St ...
- 高通(QCOM)sensor bring up
高通7150平台 1.添加驱动文件 2.添加编译 3.配置json文件 4.高通默认配置 5.部分sensor外挂电源 6.遇到的问题 1.添加驱动文件 路径:adsp_proc/ssc/sensor ...
- 阿里巴巴开源限流组件Sentinel初探
1 Sentinel主页 https://github.com/alibaba/Sentinel/wiki/主页 1.1 Sentinel介绍 随着微服务的流行,服务和服务之间的稳定性变得越来越重要. ...
- unittest框架里的常用断言方法:用于检查数据
1.unittest框架里的常用断言方法:用于检查数据. (1)assertEqual(x,y) 检查两个参数类型相同并且值相等.(2)assertTrue(x) 检查唯一的参数值等于True(3)a ...
- 机器学习-学习笔记(二) --> 模型评估与选择
目录 一.经验误差与过拟合 二.评估方法 模型评估方法 1. 留出法(hold-out) 2. 交叉验证法(cross validation) 3. 自助法(bootstrapping) 调参(par ...
- 上线项目之局域网上线软件使用-----phpStudy
上面的图片是phpStudy的软件截图.那么你在哪里会下到呢?链接: https://pan.baidu.com/s/1lvX9jY_K6gGkMOqo76p4nA 提取码: h1it 复制这段内容后 ...