Oracle 专业认证 JavaSE8 编程测验
以下是一个简单的Java程序,它使用Java 8的特性来读取一个文本文件,并计算文件中每个单词出现的次数。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Map;
import java.util.stream.Collectors;
public class WordCount {
public static void main(String[] args) {
String path = "path/to/your/file.txt"; // 替换为你的文件路径
try {
Map<String, Long> wordCount = Files.lines(Paths.get(path))
.flatMap(line -> Arrays.stream(line.split("\\s+")))
.filter(word -> word.matches("\\w{3,}")) // 只计算长度大于等于3的单词
.collect(Collectors.groupingBy(w -> w, Collectors.counting()));
wordCount.forEach((word, count) -> System.out.println(word + ": " + count));
} catch (IOException e) {
e.printStackTrace();
}
}
}
这段代码首先定义了一个WordCount
类,其中的main
方法中使用了Files.lines
方法来读取文件的行,然后使用flatMap
将每一行分割成单词流,接着使用filter
来排除不符合单词条件的内容,最后通过groupingBy
和counting
收集器来计算每个单词出现的次数。
请注意,你需要将path/to/your/file.txt
替换为你要分析的文件的实际路径。这个程序假设文件中的单词由字母、数字和下划线组成,并且单词长度至少为3个字符。
评论已关闭