java8 stream 如何打印数据元素
作者:潇洒却风流 发布时间:2022-08-20 18:40:02
写在前面
在这里,我们将会学习怎么利用java8 快速的打印出需要打印的元素
利用stream打印元素
在Java中,有三种不同的方法来打印Java 8中的Stream元素。
这三种不同方式的名称如下
Stream的 forEach()方法
Stream的 println()方法和collect()方法
Stream的 peek()方法
我们将在java 8中逐一看到打印流元素的三种方法……
1. forEach() 方法
该方法在java.util.stream包中可用。
这不是静态方法,所以这个方法将被对象调用。
这个方法的返回类型是void,所以它不返回任何东西。
这个方法充当流的每个元素。
这个方法的语法如下所示:
void forEach(Consumer <? super T > consumer);
这里,Consumer是一个接口,T是元素类型
示例:不用lambda表达式
import java.util.stream.*;
public class PrintStreamElementByForeachMethod {
public static void main(String[] args) {
// Here of() method of Stream interface is used to get the stream
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
// we are printing the stream by using forEach() method
stm.forEach(stm1 -> System.out.println(stm1));
}
}
输出
Java
is
a
programming
language
示例:简写lambda表达式
import java.util.stream.*;
public class PrintStreamElementByForeachMethod {
public static void main(String[] args) {
// Here of() method of Stream interface is used to get the stream
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
// we are printing the stream by using forEach() method
stm.forEach(System.out::println);
}
}
输出
Java
is
a
programming
language
2. println() with collect()方法
该方法在java.util.stream包中可用。
这个方法不是静态的,所以可以通过Stream接口的对象访问。
该方法以Collector对象的形式收集流元素,然后使用println()方法打印元素。
println()与collect()方法的语法
System.out.println(Stream_object.collect(Collectors.toList()));
示例
import java.util.stream.*;
public class PrintStreamElementByForeachMethod {
public static void main(String[] args) {
// Here of() method of Stream interface is used to get the stream
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
// we are printing the stream by using forEach() method
stm.forEach(System.out::println);
}
}
输出
[Java, is, a, programming, language]
3. peek() 方法
该方法在java.util.stream包中可用。
此方法不是静态的,因此将使用Stream对象调用此方法。
这个方法的语法如下所示
Stream peek(Consumer <? super T> consumer);
这个方法返回一个Stream,它包含Current流的所有元素,并对每个元素执行给定的操作或动作。
在这个方法中,如果一个流已经被消费,那么我们希望再次消费的流,在这种情况下,我们将不会得到任何错误或异常,而且它是有效的。
示例
import java.util.stream.*;
public class PrintStreamElementByPeekMethod {
public static void main(String[] args) {
// Here of() method of Stream interface is used to get the stream
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
// we are printing the stream by using peek() method
// and it provides the facility count() method to terminate
stm.peek(stm1 -> System.out.println(stm1)).count();
}
}
输出
Java
is
a
programming
language
来源:https://blog.csdn.net/weixin_43956642/article/details/125317718


猜你喜欢
- Intellij是进行scala开发的一个非常好用的工具,可以非常轻松查看scala源码,当然用它来开发Java也是很爽的,之前一直在用sc
- 一、前言在C#中,由于有了垃圾回收机制的支持,对象的析构和以前的C++有了很大的不同,这就要求程序员在设计类型的时候,充分理解.NET的机制
- 本文实例为大家分享了Android自定义控件EditText的具体代码,供大家参考,具体内容如下自定义控件分三种: 1. 自绘控件 2. 组
- 目录1、二分查找算法思想2、二分查找图示说明3、二分查找优缺点3、java代码实现3.1 使用递归实现3.1 不使用递归实现(while循环
- 1. 什么是静态内部类在Java中有静态代码块、静态变量、静态方法,当然也有静态类,但Java中的静态类只能是Java的内部类,也称为静态嵌
- 引言依照领导要求区分了两种压测模式:固定次数压测和固定时间压测。此前一直沿用的都是固定次数,所以本次第二版剥离了固定次数的模式增加了固定时间
- 一、Netty简介Netty 是一个基于NIO的客户、服务器端的编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现
- 本文实例讲述了java使用dom4j生成与解析xml文档的方法。分享给大家供大家参考,具体如下:xml是一种新的数据格式,主要用于数据交换。
- 本文实例讲述了C#实现图像锐化的方法。分享给大家供大家参考。具体如下://定义图像锐化函数private static Bitmap Sha
- 背景kafka有分区机制,一个主题topic在创建的时候,会设置分区。如果只有一个分区,那所有的消费者都订阅的是这一个分区消息;如果有多个分
- 在Android游戏开发中,我们可能经常要像PC操作一样在屏幕上双击。对于屏幕双击操作,Android 1.6版本以前并没有提供完善的手势识
- 前言前几天恰好面试一个应届生,问了一个很简单的问题:你了解过Mybatis中有几种传参方式吗?没想到其他问题回答的很好,唯独这个问题一知半解
- 笔者发现在很多应用中,都有自动获取验证码的功能:点击获取验证码按钮,收到短信,当前应用不需要退出程序就可以获取到短信中的验证码,并自动填充。
- 首先安装consul环境,参照之前的文章:https://www.jb51.net/article/141789.htm项目规划,2个服务端
- 使用淘宝ip地址库的api查询ip地址信息。TaobaoIPHelper.csusing System;using System.Coll
- Java内部类一、 含义在Java编程语言里,程序是由类(class)构建而成的。在一个类的内部也可以声明类,我们把这样的类叫做内部类。二、
- 一、概述IDEA自带的注释模板一般都很简单,然而我们在写代码的时候喜欢把类注释和文档注释写在代码里,既方便自己看所有的参数,也便于以后维护代
- 1、在pom.xml中引入actuator, security依赖 <dependency> &nbs
- 前言今天介绍的是关于Spring的数据库连接以及Jdbc模板的相关API方法,虽然在学习了hibernate之后,会知道实现数据库连接一般都
- 其实大家都知道多线程传值有三种方式:1:通过构造方法传递数据2:通过变量和方法传递数据3:通过回调函数传递数据那么博主有个非常变态的需求,所