如何在Java 8中打印Stream的元素?
打印stream元素
在Java中,有三种不同的方法可以在java 8中打印Stream的元素。这三种不同方式的名称如下:
Stream的forEach()方法
使用
collect()
Stream方法的println()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));
}
}
输出结果
E:\Programs>javac PrintStreamElementByForeachMethod.javaE:\Programs>java PrintStreamElementByForeachMethod
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);
}
}
输出结果
E:\Programs>javac PrintStreamElementByForeachMethod.javaE:\Programs>java PrintStreamElementByForeachMethod
Java
is
a
programming
language
2)使用Stream的collect()方法的println()
该方法在java.util.stream包中可用。
此方法不是静态的,因此可以通过Stream接口的对象进行访问。
此方法将流元素收集为Collector对象,然后使用
println()
方法打印元素。
println()
withcollect()
方法的语法,
System.out.println(Stream_object.collect(Collectors.toList()));
例:
import java.util.stream.*;public class PrintStreamElementByForeachMethod {
public static void main(String[] args) {
//这里的Stream接口的of()方法用来获取流
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
//我们正在使用forEach()方法打印流
stm.forEach(System.out::println);
}
}
输出结果
E:\Programs>javac PrintStreamElementByForeachMethod.javaE:\Programs>java PrintStreamElementByForeachMethod
[Java, is, a, programming, language]
3)Stream 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) {
// 这里的Stream接口的of()方法用来获取流
Stream stm = Stream.of("Java", "is", "a", "programming", "language");
//我们正在使用peek()方法打印流
//我们正在使用peek()方法打印流
stm.peek(stm1 -> System.out.println(stm1)).count();
}
}
输出结果
E:\Programs>javac PrintStreamElementByPeekMethod.javaE:\Programs>java PrintStreamElementByPeekMethod
Java
is
a
programming
language
以上是 如何在Java 8中打印Stream的元素? 的全部内容, 来源链接: utcz.com/z/334698.html