java1.8 新特性(关于 match,find reduce )操作
- match处理Integer集合
package lambda.stream;
/**
* @author 作者:cb
* @version 创建时间:2019年1月4日 下午2:35:05 */ import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream; public class StreamDemo {
public static void main(String[] args) {
testMatch();
} public static void testMatch() {
List<Integer> asList = Arrays.asList(1, 2, 3);
// 必须满足任何一个元素 都 小于5 才返回true 有一个元素大于5 都会返回false
boolean allMatch = asList.stream().allMatch(i -> i < 5);
System.out.println(allMatch);
List<Integer> asList1 = Arrays.asList(8, 9, 10);
// 必须满足任何一个元素 都不能 小于5 才返回true 有一个元素小于5 都会返回false
boolean noneMatch = asList1.stream().noneMatch(i -> i < 5);
System.out.println(noneMatch);
List<Integer> asList2 = Arrays.asList(8, 9, 3);
// 只要有任何一个元素 小于 5 都返回true
boolean anyMatch = asList2.stream().anyMatch(i -> i < 5);
System.out.println(anyMatch); }结果:
true
true
true - find
package lambda.stream;
/**
* @author 作者:cb
* @version 创建时间:2019年1月4日 下午2:35:05 */ import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream; public class StreamDemo {
public static void main(String[] args) {
testFind();
} public static void testFind() {
List<Integer> asList = Arrays.asList(5, 2, 3);
// 从该list中获取第一个元素
Integer num = asList.stream().findFirst().get();
System.out.println(num);
Integer anyNum = asList.stream().findAny().get();
System.out.println(anyNum);
}结果:
5
5 - reduce 实现一个集合的累加
package lambda.stream;
/**
* @author 作者:cb
* @version 创建时间:2019年1月4日 下午2:35:05 */ import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream; public class StreamDemo {
public static void main(String[] args) {
testReduce();
} public static void testReduce() {
List<Integer> asList = Arrays.asList(5, 2, 3);
// 实现该集合的累加
Integer reduce = asList.stream().reduce(0, (i, j) -> i + j);
System.out.println(reduce);
// 实现该集合的乘积
Integer reduce1 = asList.stream().reduce(1, (i, j) -> i * j);
System.out.println(reduce1); }结果:
10
30
java1.8 新特性(关于 match,find reduce )操作的更多相关文章
- java1.8新特性之stream流式算法
在Java1.8之前还没有stream流式算法的时候,我们要是在一个放有多个User对象的list集合中,将每个User对象的主键ID取出,组合成一个新的集合,首先想到的肯定是遍历,如下: List& ...
- Stream:java1.8新特性
原 Stream:java1.8新特性 2017年08月01日 18:15:43 kekeair-zhang 阅读数:392 标签: streamjava1-8新特性 更多 个人分类: 日记 版权声明 ...
- Java8 新特性 Steam() 中间有状态操作
中间有状态操作 Java8 新特性 Stream 练习实例 中间操作,就是把数据处理成自己想要的类型,并且有状态操作,是在所有的数据基础上进行操作的.比如dictinct(去重),sorted(排 ...
- java1.8新特性整理(全)
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/yitian_66/article/deta ...
- java1.8新特性
转自:http://www.oschina.NET/translate/everything-about-Java-8 建议去看原文,此处转载只是为了记录. 这篇文章是对Java8中即将到来的改进做一 ...
- java1.8新特性(一)
一直在更新java 版本,原来也没有关注java版本的变化 引入的一些新的api 引起注意的还是 关于一些并发包的使用,那时候才对每个版本的特性 去了解了一下,虽然 不一定都用上了,但是不管学习什 ...
- java1.7新特性:try-with-resources
转载:https://blog.csdn.net/fanxiaobin577328725/article/details/53067163 首先看代码: import org.junit.Test; ...
- Java1.8新特性 - Stream流式算法
一. 流式处理简介 在我接触到java8流式数据处理的时候,我的第一感觉是流式处理让集合操作变得简洁了许多,通常我们需要多行代码才能完成的操作,借助于流式处理可以在一行中实现.比如我们希望对一个包 ...
- Java1.7新特性
1.switch语句支持字符串变量 public String getTypeOfDayWithSwitchStatement(String dayOfWeekArg) { String typeOf ...
- Java1.8新特性——接口改动和Lambda表达式
Java1.8新特性——接口改动和Lambda表达式 摘要:本文主要学习了Java1.8的新特性中有关接口和Lambda表达式的部分. 部分内容来自以下博客: https://www.cnblogs. ...
随机推荐
- python django day 4 database
django-admin.py startproject learn_models # 新建一个项目 cd learn_models # 进入到该项目的文件夹 django-admin.py star ...
- Queue接口的实现类竟然有一个是LinkedList,一个是优先队列(同一个接口,只改了不同的实现类,附源码)
输出是: Queue接口底层换一个实现类,照样的是调用Queue接口中的方法 import java.util.HashMap; import java.util.LinkedList; import ...
- CLR(Common Language Runtime) 公共语言运行库
.NET Core 使用 CoreCLR .NET Framework 使用CLR. 1. 将代码编译为IL (Intermediate Language) 2. CLR 把IL 编译为平台专用的本地 ...
- Day 35数据库(Day1)
创建表. create table student( id int not null auto_increment PRIMARY key, name archar(250) not null, ag ...
- First 1
一,Python介绍 1,python的出生与应用 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打 ...
- MYSQL 中的 int(11) 到底代表什么意思?
各 INT 类型无符号最大值用单位表示: INT 类型 无符号最大值用单位表示 TINYINT 255 SMALLINT 65535 MEDIUMINT 1677 万 INT 42 亿 BIGINT ...
- operator <<”不明确
在声明重载的输出运算符<< 时,如果声明时的返回类型是std::ostream,而不是std::ostream&,但是定义的时候又加了引用的话,那么就会报“operator < ...
- hbase 相关
----------------------------------------hbase的 安装---------------------------------------- 本地安装: 1 解压 ...
- href="javacript:;" href="javacript:void(0);" href="#"区别。。。
一.href="javacript:;" 这种用法不正确,这么用的话会出现浏览器访问“javascript:;”这个地址的现象: 二.href="javacript:v ...
- FireDAC探索 (二)
又花时间试了试FireDAC,本想找到一些办法,让FireDAC取数据能和DBX样快,最终还是失败了,DBX实现是太快了,3472第记录(110个字段的表),0毫秒就抓过来了, FireDAC最快也要 ...