JDK8新特性(五)之Stream流介绍和获取方式
1.Stream流介绍
当我们需要对集合中的元素进行操作的时候,除了必需的添加、删除、获取外,最典型的就是集合遍历。我们来体验集合操作数据的弊端,需求如下:
一个ArrayList集合中存储有以下数据:张无忌、周芷若、赵敏、张三丰
需求:1.拿到所有姓张的 2.拿到名字长度为3个字的 3.打印这些数据
import java.util.ArrayList;
import java.util.Collections;public class Demo {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "张无忌", "周芷若", "赵敏", "张三丰");// 1.拿到所有姓张的ArrayList<String> zhangList = new ArrayList<>();for (String name : list) {if (name.startsWith("张")) {zhangList.add(name);}}// 2.拿到名字长度为3个字的ArrayList<String> threeList = new ArrayList<>();for (String name : zhangL
JDK8新特性(五)之Stream流介绍和获取方式相关推荐
- JDK8新特性(六)之Stream流的forEach()方法
Stream流模型的操作很丰富,这里介绍一些常用的API.这些方法可以被分成两种: 终结方法:返回值类型不再是Stream类型的方法,不再支持链式调用,上述列出的列表中终结方法包括count和forE ...
- JDK8新特性(九)之Stream流的find()、max()、min()、reduce()方法
1.Stream流的find()方法 如果需要找到某些数据,可以使用find相关方法.方法声明: Optional<T> findFirst(); Optional<T> fi ...
- JDK8新特性(十)之Stream流的map和reduce组合使用、mapToInt()、concat()方法
1.Stream流的map和reduce组合使用 假设当前存在Person类,下述两个Person类的需求都是借助Stream流的map()和reduce()方法 import lombok.AllA ...
- JDK8新特性(八)之Stream流的map()、sorted()、distinct()、match()方法
1.Stream流的map()方法 如果需要将流中的元素映射到另一个流中,可以使用map方法.方法声明: <R> Stream<R> map(Function<? sup ...
- JDK8新特性(七)之Stream流的count()、filter()、limit()、skip()方法
1.Stream流的count()方法 Stream流提供count方法来统计其中的元素格式: long count() 该方法返回一个long值代表元素个数,基本使用: import java.ut ...
- JDK8新特性(五):JDK8时间日期API
本文目录: 前言 1.旧版日期时间API存在的问题 2.新日期时间 API 介绍 3.用法介绍 1.JDK8 日期和时间类 2.JDK8 日期时间格式化与解析 3.JDK8 Instant 类 4.J ...
- java 8 stream_深度分析:java8的新特性lambda和stream流,看完你学会了吗?
1. lambda表达式 1.1 什么是lambda 以java为例,可以对一个java变量赋一个值,比如int a = 1,而对于一个方法,一块代码也是赋予给一个变量的,对于这块代码,或者说被赋给变 ...
- Java8新特性:使用Stream流递归实现遍历树形结构
作者:Lcry blog.csdn.net/qq_19244927/article/details/106481777 可能平常会遇到一些需求,比如构建菜单,构建树形结构,数据库一般就使用父id来表示 ...
- 【JDK8 新特性 6】收集Stream流中的结果
上一篇文章 : (9条消息) [JDK8 新特性 5]Stream流介绍和常用方法的使用_一切总会归于平淡的博客-CSDN博客 目录 1.Stream流中的结果到集合中 2.Stream流中的结果到数 ...
最新文章
- Spring学习12之AOP2
- [转载]创建数据库与完成数据添删改查--第一种写法
- Unterminated lt;c:forEach tag
- Nearest Common Ancestors(LCA板子)
- 切线理论-支撑位与阻力位
- 搜狗开源最新NLP研究成果,打造业内最全机器阅读理解工具包SMRC
- 六步搞定RHEL5下的mysql镜像数据库配置
- Solidity语言基础 和 Etherum ERC20合约基础
- java Beanutils.copyProperties( )用法
- Matlab线型、标记符号、颜色
- OpenStack在天河二号的大规模部署实践(转)
- php中法兰克福的时区,法兰克福时差与中国差多少
- matlab 光斑质心算法,高精度光斑中心定位算法
- 基于SSM梵杰妮纺织品公司订单管理系统
- uni-app的由来
- 什么是NoSql?为什么要使用NoSql?
- linux 系统时间 硬件时间 及 时区设置
- 地理总结(三)--川南川北川东川西划分
- TS与JS区别、优势
- What is design:the answer from Jony Ive
热门文章
- VS2008 在IE8中 调试 ActiveX控件 无法进入断点的解决方法 设置VS2008和IE8 调试ATL MFC ActiveX控件
- Matlab内存不足问题的解决 .
- AutoML在推荐系统协同过滤中的探索与发现(附交流视频和PPT下载链接)
- 文本匹配开山之作--双塔模型及实战
- 中级病案信息技术计算机基础知识要点,病案信息技术基础知识考试重点梳理(最新最全).doc...
- 源码包安装mysql_源码包安装MySQL
- 海外仓储系统有哪些功能?
- Leetcode每日一题:1002.find-common-characters(查找常用字符串)
- 西瓜书+实战+吴恩达机器学习(二十)随机算法(拉斯维加斯方法、蒙特卡罗方法)
- 解决忽略vscode中pylint报错的问题