[Java基础]Stream流的常见中间操作方法

在这里插入图片描述

代码如下:

package StreamTest;import java.util.ArrayList;public class StreamDemo02 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("Tom");list.add("Bom");list.add("jack");list.add("张无忌");list.add("张敏");list.add("张曼玉");//需求1:把list集合中以张开头的元素在控制台输出//        list.stream().filter((String s)->{return s.startsWith("张");}).forEach(System.out::println);list.stream().filter(s->s.startsWith("张")).forEach(System.out::println);System.out.println("--------------------------");//需求2:把list集合中长度为3的元素在控制台输出list.stream().filter(s->s.length()==3).forEach(System.out::println);System.out.println("--------------------------");//需求3:把list集合中以张开头的,长度为3的元素在控制台输出list.stream().filter(s->s.startsWith("张")).filter(s->s.length()==3).forEach(System.out::println);}
}

在这里插入图片描述

代码如下:

package StreamTest;import java.util.ArrayList;public class StreamDemo03 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("Tom");list.add("Bom");list.add("jack");list.add("张无忌");list.add("张敏");list.add("张曼玉");//需求1:取前3个数据在控制台输出list.stream().limit(3).forEach(System.out::println);System.out.println("-----------------------------");//需求2:跳过3个元素,把剩下的元素在控制台输出list.stream().skip(3).forEach(System.out::println);System.out.println("-------------------------------");//需求3:跳过2个元素,把剩下的元素中前2个在控制台输出list.stream().skip(2).limit(2).forEach(System.out::println);}
}

在这里插入图片描述

代码如下:

package StreamTest;import java.util.ArrayList;
import java.util.stream.Stream;public class StreamDemo04 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("Tom");list.add("Bom");list.add("jack");list.add("张无忌");list.add("张敏");list.add("张曼玉");//需求1:取前4个数据组成一个流Stream<String> s1 = list.stream().limit(4);//需求2:跳过2个数据组成一个流Stream<String> s2 = list.stream().skip(2);//需求3:合并需求1和需求2得到的流,并把结果在控制台输出Stream.concat(s1,s2).forEach(System.out::println);}
}
package StreamTest;import java.util.ArrayList;
import java.util.stream.Stream;public class StreamDemo04 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("Tom");list.add("Bom");list.add("jack");list.add("张无忌");list.add("张敏");list.add("张曼玉");//需求1:取前4个数据组成一个流Stream<String> s1 = list.stream().limit(4);//需求2:跳过2个数据组成一个流Stream<String> s2 = list.stream().skip(2);//需求4:合并需求1和需求2得到的流,并把结果在控制台输出,要求字符串元素不能重复Stream.concat(s1,s2).distinct().forEach(System.out::println);}
}

在这里插入图片描述

代码如下:

package StreamTest;import java.lang.reflect.Array;
import java.util.ArrayList;public class StreamDemo05 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("linqinxia");list.add("baobo");list.add("jack");list.add("zhangmanyu");list.add("tangbohu");list.add("mike");//需求1:按照字母顺序把数据在控制台输出list.stream().sorted().forEach(System.out::println);System.out.println("----------------------------------");//需求2:按照字符串长度把数据在控制台输出list.stream().sorted((s1,s2)->{int num = s1.length()-s2.length();int num1 = num==0?s1.compareTo(s2):num;return num1;}).forEach(System.out::println);}
}

在这里插入图片描述

代码如下:

package StreamTest;import java.util.ArrayList;public class StreamDemo06 {public static void main(String[] args){ArrayList<String> list = new ArrayList<String>();list.add("10");list.add("20");list.add("30");list.add("40");list.add("50");//        list.stream().map(s->Integer.parseInt(s)).forEach(System.out::println);list.stream().map(Integer::parseInt).forEach(System.out::println);System.out.println("--------------------------");list.stream().mapToInt(Integer::parseInt).forEach(System.out::println);//int sum()返回此流元素的总和,该方法只在IntStreamint result = list.stream().mapToInt(Integer::parseInt).sum();System.out.println(result);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/309586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GCD and LCM Aizu - 0005(辗转相除)+GCD LCM Inverse POJ - 2429(java或【Miller Rabin素数測试】+【Pollar Rho整数分解】)

题目&#xff1a;GCD and LCM Aizu - 0005 Write a program which computes the greatest common divisor (GCD) and the least common multiple (LCM) of given a and b. Input Input consists of several data sets. Each data set contains a and b separated by a singl…

云原生初探

文章目录什么是云原生&#xff1f;第二讲 容器的基本概念什么是容器&#xff1f;容器运行时的生命周期容器项目的架构容器和VM的差异第三讲 Kubernetes核心概念什么是KubernetesKubernetes架构Kubernetes核心概念和API第四讲 理解Pod和容器设计模式为什么Pod必须是原子调度单位…

15分钟从零开始搭建支持10w+用户的生产环境(三)

上一篇文章介绍了这个架构中&#xff0c;选择MongoDB做为数据库的原因&#xff0c;及相关的安装操作。原文地址&#xff1a;15分钟从零开始搭建支持10w用户的生产环境(二)三、WebServer在SOA和gRPC大行其道的今天&#xff0c;WebServer在系统中属于重中之重&#xff0c;是一个系…

[Java基础]Stream流终结操作之forEachcount

代码如下: package StreamTest;import java.util.ArrayList;public class StreamDemo06 {public static void main(String[] args) {ArrayList<String> list new ArrayList<String>();list.add("Jack");list.add("Tom");list.add("张敏…

Prime Number Aizu - 0009(素数筛)

题意&#xff1a; 给一个数n&#xff0c;问1~n内有多少个素数 题目&#xff1a; Write a program which reads an integer n and prints the number of prime numbers which are less than or equal to n. A prime number is a natural number which has exactly two distin…

实现.Net程序中OpenTracing采样和上报配置的自动更新

前言OpenTracing是一个链路跟踪的开放协议&#xff0c;已经有开源的.net实现&#xff1a;opentracing-csharp&#xff0c;同时支持.net framework和.net core&#xff0c;Github地址&#xff1a;https://github.com/opentracing/opentracing-csharp。这个库支持多种链路跟踪模式…

Golang中的error

文章目录Golang中的errorerror源码error创建Unwrap()、Is() 和 As()参考&#xff1a;https://www.flysnow.org/2019/09/06/go1.13-error-wrapping.html Golang中的error error源码 type error interface {Error() string }error 是一个接口类型&#xff0c;它包含一个 Error(…

[Java基础]Stream流综合练习

代码如下: package StreamDemoFinal;public class Actor {private String name;public Actor(String name) {this.name name;}public String getName() {return name;}public void setName(String name) {this.name name;} }package StreamDemoFinal;import java.util.Array…

Apple Catching POJ - 2385(基础的动态规划算法)

题意&#xff1a; 给你两个数字n和m&#xff1b;代表会有n个苹果掉落&#xff0c;m次可以移动的机会&#xff1b;有两棵树&#xff0c;开始你站在树1下面&#xff0c;一分钟只能移动一次&#xff0c;下面的数值代表在哪一颗树下会掉落苹果&#xff1b;问你在可移动的范围内&am…

基于 abp vNext 和 .NET Core 开发博客项目 - 用AutoMapper搞定对象映射

上一篇文章集成了定时任务处理框架Hangfire&#xff0c;完成了一个简单的定时任务处理解决方案。本篇紧接着来玩一下AutoMapper&#xff0c;AutoMapper可以很方便的搞定我们对象到对象之间的映射关系处理&#xff0c;同时abp也帮我们是现实了IObjectMapper接口&#xff0c;先根…

磁盘文件系统、挂载

参考&#xff1a;https://zhuanlan.zhihu.com/p/106459445 https://blog.csdn.net/qq_39521554/article/details/79501714 文件系统 持久化的数据是存储在外部磁盘上的&#xff0c;如果没有文件系统&#xff0c;访问这些数据需要直接读写磁盘的sector&#xff0c;而文件系统存…

[Java基础]Stream流的收集操作

代码如下: package CollectPack;import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream;public class CollectDemo {public static void main(String[] args){List<String> list new ArrayList<String>();list.add("林青…

Bound Found POJ - 2566(尺取法+前缀和创造区间变化趋势)

题意&#xff1a; 给定一个数组和一个值t&#xff0c;求一个子区间使得其和的绝对值与t的差值最小&#xff0c;如果存在多个&#xff0c;任意解都可行。 题目&#xff1a; Signals of most probably extra-terrestrial origin have been received and digitalized by The Ae…

MESI 缓存一致性协议

MESI 缓存一致性协议 多核场景下&#xff0c;仅仅依靠CAS这一类硬件原语并不能实现同步&#xff0c;因为原子指令底层实现也可能包含多条微指令&#xff0c;而原子指令的原子性是相对于一个核而言的&#xff0c;多条原子指令在各自的CPU核上都是原子执行的。所以要解决这个问题…

15分钟从零开始搭建支持10w+用户的生产环境(一)

前言这是一个基于中小型企业或团队的架构设计。不考虑大厂。有充分的理由相信&#xff0c;大厂有绝对的实力来搭建一个相当复杂的环境。中小型企业或团队是个什么样子&#xff1f;开发团队人员配置不全&#xff0c;部分人员身兼开发过程上下游的数个职责&#xff1b;没有专职的…

Sum of Consecutive Prime Numbers POJ - 2739(线性欧拉筛+尺取法)

题意&#xff1a; 一些正整数可以由一个或多个连续质数的总和表示。给定一个的正整数n,问满足条件的有多少种情况&#xff1f; 题目&#xff1a; Some positive integers can be represented by a sum of one or more consecutive prime numbers. How many such representat…

高性能IO——Reactor模式

高性能IO——Reactor模式 参考&#xff1a;https://cloud.tencent.com/developer/article/1513447 目前的IO线程处理模型一般可以分为以下三类&#xff1a; 单线程阻塞I/O服务模型&#xff1b; while(true) {socket accept();handle(socket) }多线程阻塞I/O服务模型&#xf…

X-lab 开放实验室开源创新的故事

本报告为“开源软件供应链点亮计划暑期2020活动”中的“大咖说开源”第二期的特邀嘉宾视频&#xff0c;正好借此机会给大家介绍下 X-lab 实验室目前在开源方面开展的一些事情&#xff0c;欢迎大家关注&#xff0c;也欢迎更多热爱开源的朋友们加入&#xff01;摘要&#xff1a;2…

Circle and Points POJ - 1981(单位圆覆盖最多点)

题意&#xff1a; 给你n个点和点的位置&#xff0c;问单位圆最多能覆盖多少个点。 题目&#xff1a; You are given N points in the xy-plane. You have a circle of radius one and move it on the xy-plane, so as to enclose as many of the points as possible. Find h…