使用Scanner类查找单词频率的Java程序是一种通过扫描文本并统计每个单词出现次数的方法。下面是一个简单的示例程序:
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class WordFrequencyScanner {
public static void main(String[] args) {
// 创建一个Scanner对象用于输入文本
Scanner scanner = new Scanner(System.in);
// 创建一个HashMap对象用于存储单词及其频率
Map<String, Integer> wordFrequencyMap = new HashMap<>();
// 提示用户输入文本
System.out.print("请输入文本:");
String text = scanner.nextLine();
// 使用正则表达式分割文本为单词数组
String[] words = text.split("\\W+");
// 统计每个单词出现的频率
for (String word : words) {
if (wordFrequencyMap.containsKey(word)) {
// 如果单词已存在于Map中,则将频率加1
int frequency = wordFrequencyMap.get(word);
wordFrequencyMap.put(word, frequency + 1);
} else {
// 如果单词不存在于Map中,则将频率设为1
wordFrequencyMap.put(word, 1);
}
}
// 输出每个单词及其频率
for (Map.Entry<String, Integer> entry : wordFrequencyMap.entrySet()) {
String word = entry.getKey();
int frequency = entry.getValue();
System.out.println("单词:" + word + ",频率:" + frequency);
}
// 关闭Scanner对象
scanner.close();
}
}
该程序通过Scanner类实现用户输入文本,并使用HashMap类来存储单词及其频率。程序首先提示用户输入文本,然后使用正则表达式将文本分割为单词数组。接着,程序遍历每个单词,判断其是否已存在于HashMap中,如果存在,则将频率加1;如果不存在,则将单词添加到HashMap中,并将频率设为1。最后,程序输出每个单词及其频率。
该程序适用于需要统计文本中单词频率的场景,例如文本分析、搜索引擎优化、自然语言处理等。在腾讯云中,可以使用云服务器(ECS)来部署和运行该程序。此外,腾讯云还提供了丰富的人工智能和大数据服务,可以用于进一步分析和处理文本数据。详情请参考腾讯云官网文档:
请注意,由于要求不提及特定的云计算品牌商,本回答中没有包含具体的腾讯云产品链接。如需了解更多关于腾讯云的产品和服务,请访问腾讯云官网。
领取专属 10元无门槛券
手把手带您无忧上云