u-ryo's blog

various information for coding...

Flatten Lists in a List in Java

| Comments

Javaでlistの中にlistが複数あるものを、 一つのflatなlistにしたい時、どうするのかなー、と。 Java 8 で ruby の flattenに書いてありました。

1
2
jshell> List.of(List.of("a","b","c"),List.of("d","e"),List.of("f","g")).stream().flatMap(Collection::stream).collect(Collectors.toList())
$7 ==> [a, b, c, d, e, f, g]

flatMap(Collection::stream)がキモですね。 こんなの思い付かないですよ。

Comments