溫馨提示×

java中的flatmap怎么使用

小億
137
2023-12-21 05:53:13
欄目: 編程語言

在Java中,flatMap是一個用于將Stream中的每個元素映射到一個Stream,并將所有的Stream連接成一個Stream的操作。

flatMap可以用于一對多的映射,例如將一個字符串列表中的每個字符串拆分為單個字符,然后將所有字符連接成一個字符流。

下面是一個使用flatMap的示例:

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class FlatMapExample {
    public static void main(String[] args) {
        List<String> words = Arrays.asList("Hello", "World");

        List<String> characters = words.stream()
                .flatMap(word -> Arrays.stream(word.split(""))) // 將每個單詞拆分為字符流
                .collect(Collectors.toList());

        System.out.println(characters); // 輸出:[H, e, l, l, o, W, o, r, l, d]
    }
}

在上面的示例中,首先創(chuàng)建了一個字符串列表words,然后使用stream()方法將其轉(zhuǎn)換為一個流。接下來,使用flatMap操作對每個單詞進行拆分,將每個單詞轉(zhuǎn)換為一個字符流。最后,使用collect方法將所有字符收集到一個列表中,并打印輸出。

需要注意的是,flatMap操作返回的是一個流,因此在后續(xù)的操作中可以繼續(xù)鏈?zhǔn)秸{(diào)用其他的Stream操作。

0