全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法

本文实例讲述了Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法。分享给大家供大家参考,具体如下:

package javatest;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class Demo {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入 :");
    String inputStr = scanner.nextLine();
    System.out.println("inputStr : " + inputStr);
    File file = new File("D:/test/test01.txt");
    FileOutputStream fileOut;
    try {
      fileOut = new FileOutputStream(file);
      fileOut.write(inputStr.getBytes());
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    String result = "";
    try {
      BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
      String s = null;
      while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
        result = result + s + " ";
      }
      br.close();
    } catch (Exception e) {
      e.printStackTrace();
    }
    System.out.println("---------------------------------------------");
    System.out.println(result);
    String[] arr = result.split(" ");
    System.out.println(Arrays.toString(arr));
    System.out.println(arr.length);
    Map<String, Integer> map = new HashMap<>();
    for (String str : arr) {
      Integer num = map.get(str);
      map.put(str, num == null ? 1 : num + 1);
    }
    Set set = map.entrySet();
    Iterator it = set.iterator();
    System.out.println("---------------------------------------------");
    System.out.println("方法一 :");
    while (it.hasNext()) {
      Map.Entry<String, Integer> entry = (Map.Entry<String, Integer>) it.next();
      System.out.println("单词 " + entry.getKey() + " 出现次数 : " + entry.getValue());
    }
    System.out.println("---------------------------------------------");
    System.out.println("方法二 :");
    Iterator it01 = map.keySet().iterator();
    while (it01.hasNext()) {
      Object key = it01.next();
      System.out.println("单词 " + key + " 出现次数 : " + map.get(key));
    }
  }
}

输出:

请输入 :
AAA BBB CCC DDD DDD AAA
inputStr : AAA BBB CCC DDD DDD AAA
---------------------------------------------
AAA BBB CCC DDD DDD AAA
[AAA, BBB, CCC, DDD, DDD, AAA]
6
---------------------------------------------
方法一 :
单词 AAA 出现次数 : 2
单词 CCC 出现次数 : 1
单词 BBB 出现次数 : 1
单词 DDD 出现次数 : 2
---------------------------------------------
方法二 :
单词 AAA 出现次数 : 2
单词 CCC 出现次数 : 1
单词 BBB 出现次数 : 1
单词 DDD 出现次数 : 2

PS:这里再为大家推荐2款非常方便的统计工具供大家参考使用:

在线字数统计工具:
http://tools./code/zishutongji

在线字符统计与编辑工具:
http://tools./code/char_tongji

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


# Java  # 读取  # 键盘输入  # 保存  # txt文件  # 统计  # 输出  # 单词  # 次数  # java文件如何统计字母出现的次数和百分比  # java统计文件中每个字符出现的个数  # java文件操作代码片断实例实现统计文件中字母出现的个数功能  # java代码实现C盘文件统计工具  # 请输入  # 操作技巧  # 相关内容  # 感兴趣  # 数据结构  # 给大家  # 更多关于  # 所述  # 程序设计  # 再为  # 编辑工具  # 讲述了  # main  # void  # String  # scanner  # args  # static 


相关文章: 公司网站的制作公司,企业网站制作基本流程有哪些?  如何在腾讯云服务器上快速搭建个人网站?  如何通过免费商城建站系统源码自定义网站主题与功能?  Python lxml的etree和ElementTree有什么区别  如何零成本快速生成个人自助网站?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  网站制作模板下载什么软件,ppt模板免费下载网站?  相册网站制作软件,图片上的网址怎么复制?  制作营销网站公司,淘特是干什么用的?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  网站制作壁纸教程视频,电脑壁纸网站?  怎么将XML数据可视化 D3.js加载XML  如何选择CMS系统实现快速建站与SEO优化?  如何通过西部数码建站助手快速创建专业网站?  定制建站策划方案_专业建站与网站建设方案一站式指南  如何快速生成ASP一键建站模板并优化安全性?  如何快速搭建安全的FTP站点?  建站org新手必看:2024最新搭建流程与模板选择技巧  javascript中的try catch异常捕获机制用法分析  如何在建站主机中优化服务器配置?  建站之星后台密码遗忘如何找回?  建站之星图片链接生成指南:自助建站与智能设计教程  如何在IIS中新建站点并解决端口绑定冲突?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  C++中引用和指针有什么区别?(代码说明)  如何在服务器上配置二级域名建站?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  如何选择高效稳定的ISP建站解决方案?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  济南企业网站制作公司,济南社保单位网上缴费步骤?  常州自助建站工具推荐:低成本搭建与模板选择技巧  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  音响网站制作视频教程,隆霸音响官方网站?  如何选择PHP开源工具快速搭建网站?  建站主机如何选?高性价比方案全解析  小程序网站制作需要准备什么资料,如何制作小程序?  c# 在高并发场景下,委托和接口调用的性能对比  如何用西部建站助手快速创建专业网站?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  香港服务器选型指南:免备案配置与高效建站方案解析  c# 在ASP.NET Core中管理和取消后台任务  如何快速生成专业多端适配建站电话?  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  教学论文网站制作软件有哪些,写论文用什么软件 ?  如何选择服务器才能高效搭建专属网站?  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  建站之星安装模板失败:服务器环境不兼容? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。