///
Observe o extrato do código abaixo.
public class StreamOfLines {
public static void main(String[] args)
throws IOException {
Pattern pattern = Pattern.compile("\\ls+");
Map<String, Long> wordCounts =
Files.lines(Paths.get("Chapter2Paragraph.txt"))
.map(line -> line.replaceAll("(?!\\p{L})\\p{P}", ""))
.flatMap(line -> pattern.splitAsStream(line))
.collect(Collectors.groupingBy(String::toLowerCase,
TreeMap::new, Collectors.counting()));
wordCounts.entrySet().stream().collect(
Collectors.groupingBy(entry ->
entry.getKey().charAt(0),
TreeMap::new, Collectors.toList()))
.forEach((letter, wordList) ->
{ System.out.printf("%n%c%n",
letter);
wordList.stream().forEach(
word -> System.out.
printf("%13s: %d%n",
word.getKey(),
word.getValue()));
}); } }Sobre esse código, assinale a opção correta.