Java集合流操作是Java 8中引入的一种新的操作集合的方式,它可以帮助我们更加高效地处理集合中的数据。它使用函数式编程风格,可以让我们使用简单、优雅的代码来处理集合中的数据。
Java集合流操作主要包括三个步骤:创建流、中间操作和最终操作。首先,我们需要创建一个流,这可以通过调用Collection.stream()方法来实现。然后,我们可以对流执行一些中间操作,例如filter()、map()、sorted()等,这些都是函数式编程风格的函数。最后,我们可以执行最终操作来获得想要的结果,例如forEach()、collect()、reduce() 等。
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5); list.stream().filter(x -> x % 2 == 0).forEach(System.out::println); // 输出2 4
java.util.Arrays类包含用于从数组创建顺序流的stream()方法。
我们可以使用它来创建一个IntStream,一个LongStream,一个DoubleStream和一个Stream <T>。
下面的代码创建一个IntStream。
IntStream numbers = Arrays.stream(new int[]{1, 2, 3});
以下代码从int数组和String数组创建Stream <String>。
Stream<String> names = Arrays.stream(new String[] {"XML", "Java"});
Collection接口包含stream()和parallelStream()方法,它们分别从Collection创建顺序流和并行流。
以下代码从一组字符串创建流:
import java.util.HashSet; import java.util.Set; import java.util.stream.Stream; public class Main { public static void main(String[] args) { Set<String> names = new HashSet<>(); names.add("XML"); names.add("Java"); Stream<String> sequentialStream = names.stream(); sequentialStream.forEach(System.out::println); Stream<String> parallelStream = names.parallelStream(); parallelStream.forEach(System.out::println); } }
上面的代码生成以下结果。
Java IO教程 -Java随机访问文件使用随机访问文件,我们可以从文件读取以及写入文件。使用文件输入和输出流的读取和写入是顺序过...
Java IO教程 -Java文件File类的对象是文件或目录的路径名的抽象表示。创建文件我们可以从中创建一个 File 对象路径名父路径名和...
Java IO教程 -Java文件 java.nio.file.Files 包含所有允许我们对Path对象执行大多数文件操作的静态方法。创建新文件文件可以创建...
Java IO教程 -Java Jar清单清单文件JAR文件可以可选地在META-INF目录中包含名为MANIFEST.MF的清单文件。清单文件包含有关JAR文件...
Java IO教程 - Java缓冲输入流BufferedInputStream通过缓冲数据向输入流添加功能。它维护一个内部缓冲区以存储从底层输入流读取...