MST
星途 面试题库

面试题:Java中通过集合创建Stream流的常见方式有哪些

请详细说明在Java中,如何利用集合来创建Stream流,比如List、Set等集合类型创建Stream流的具体方法,并给出相应代码示例。
30.9万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试

在Java中,ListSet等集合类型创建Stream流的方法如下:

1. List创建Stream

List接口继承自Collection接口,Collection接口提供了stream()方法来获取顺序流,parallelStream()方法来获取并行流。

示例代码如下:

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;

public class ListToStreamExample {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("apple");
        list.add("banana");
        list.add("cherry");

        // 获取顺序流
        Stream<String> sequentialStream = list.stream();
        sequentialStream.forEach(System.out::println);

        // 获取并行流
        Stream<String> parallelStream = list.parallelStream();
        parallelStream.forEach(System.out::println);
    }
}

2. Set创建Stream

Set接口同样继承自Collection接口,所以创建Stream流的方式和List类似。

示例代码如下:

import java.util.HashSet;
import java.util.Set;
import java.util.stream.Stream;

public class SetToStreamExample {
    public static void main(String[] args) {
        Set<String> set = new HashSet<>();
        set.add("one");
        set.add("two");
        set.add("three");

        // 获取顺序流
        Stream<String> sequentialStream = set.stream();
        sequentialStream.forEach(System.out::println);

        // 获取并行流
        Stream<String> parallelStream = set.parallelStream();
        parallelStream.forEach(System.out::println);
    }
}

总结来说,对于实现了Collection接口的ListSet集合类型,都可以通过调用stream()方法获取顺序流,调用parallelStream()方法获取并行流,以方便对集合元素进行各种流操作。