【Java】统计字符出现次数

需求

键盘输入字符串,统计其中出现的字符,及其出现次数

运行效果

代码

方法一

package com.cxl.demo01;import java.util.Scanner;/*统计字符次数键盘输入字符串,统计其中出现的字符,及其出现次数*/
public class CountChar {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入字符串:");String str = sc.nextLine();//拆分字符串char[] chars = str.toCharArray();//设置标识,与其他字符比较有相同则为true,代表此字符无需再去比较,减少重复boolean[] flag = new boolean[chars.length];    //系统自动为其赋默认值,为falsefor (int i = 0; i < chars.length ; i++) {if (flag[i] == false){int count = 1;  //首次计算次数for (int j = i+1; j < chars.length; j++) {if (chars[i] == chars[j]){//字符相同,即再次出现,次数+1,标识改为true,不再进行比较count++;flag[j] = true;}}System.out.print(chars[i]+"("+count+") ");  //打印字符及其出现次数}}}
}

方法二:HashMap

package com.cxl.demo01;import java.util.HashMap;
import java.util.Scanner;
import java.util.Set;public class Demo03_CountChar2 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入字符串:");String str = sc.nextLine();//创建HashMap集合HashMap<Character, Integer> hm = new HashMap<>();//遍历字符串for (int i = 0; i < str.length(); i++) {//字符串转为字符型,并计算其出现次数,存储与HashMap集合char key = str.charAt(i);Integer value = hm.get(key);if (value == null){hm.put(key,1);}else {value++;hm.put(key,value);}}//遍历HashMap集合,将其输出StringBuilder sb = new StringBuilder();Set<Character> keySet = hm.keySet();for (Character key : keySet){Integer value = hm.get(key);sb.append(key).append("(").append(value).append(") ");}String result = sb.toString();System.out.println(result);}
}

【Java】统计字符出现次数相关推荐

  1. pta统计字符出现次数

    -10 统计字符出现次数 (20 分) 本题要求编写程序,统计并输出某给定字符在给定字符串中出现的次数. 输入格式: 输入第一行给出一个以回车结束的字符串(少于80个字符):第二行输入一个字符. 输出 ...

  2. java统计输入出现次数并打印_Java键盘输入一个字符串,并且统计其中各种字符出现的次数...

    package demo02; import java.util.Scanner; /* 题目: 键盘输入一个字符串,并且统计其中各种字符出现的次数 种类有"大写字母.小写字母.数字.其他 ...

  3. Java专题 Map,hashMap 多种遍历方式 总结+统计字符出现次数案例

    描述 Map 与Collection同级 键值对 数据按一对为单位存储 python中的字典 Map ->双列集合的顶层接口 HashMap-> 哈希表存储 没有固定顺序 LinkedHa ...

  4. java统计单词出现次数_java-统计一段句子中各单词出现的次数

    问题:统计一段句子中各单词出现的次数. 思路: 1.使用split方法将文章进行分割,我们这里以空格.逗号和句点为分隔符,然后存到一个字符串数组中. 2.创建一个hashMap集合,key是字符串类型 ...

  5. python统计字符出现次数

    统计<水调歌头·明月几时有>字符出现次数. 明月几时有,把酒问青天. 不知天上宫阙,今夕是何年? 我欲乘风归去,又恐琼楼玉宇,高处不胜寒. 起舞弄清影,何似在人间! 转朱阁,低绮户,照无眠 ...

  6. Python学习之学校教学(统计字符出现次数,包括字、标点符号)

    题目描述: 统计<水调歌头·明月几时有>字符出现次数. 明月几时有,把酒问青天. 不知天上宫阙,今夕是何年? 我欲乘风归去,又恐琼楼玉宇,高处不胜寒. 起舞弄清影,何似在人间! 转朱阁,低 ...

  7. PTA-7-2 统计字符出现次数 (20分)

    标题本题要求编写程序,统计并输出某给定字符在给定字符串中出现的次数. 输入格式: 输入第一行给出一个以回车结束的字符串(少于80个字符):第二行输入一个字符. 输出格式: 在一行中输出给定字符在给定字 ...

  8. java统计字母出现次数_java文件如何统计字母出现的次数和百分比

    这篇文章主要介绍了java文件如何统计字母出现的次数和百分比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 主要是文件的读写.先在代码中导入文件.一 ...

  9. 用java统计任一书名次数_Java入门第三季 借书系统源代码 加入了限制重输次数 欢迎指教交流...

    昨天刷完了关于异常的视频,感觉讲的太跳跃了,让我这个新手有点不适应,摸索了很久才完成了这个借书系统,擅自命名为达达借书系统,我还没习惯写备注,如果有看不懂的地方,欢迎大家留言指教. 建立 JieShu ...

最新文章

  1. 三点提升关键词排名的写作技巧
  2. 线程A向队列Q中不停写入数据,线程B从列队Q中不停读取数据(只要Q中有数据)。
  3. 文档模型(JSON)使用介绍
  4. 【转】使IFRAME在iOS设备上支持滚动
  5. (一)html5中的新增元素和废除元素
  6. win10 下安装、配置、启动mysql
  7. 荣耀20发布会花式官宣:4!-3!+2!伦敦见
  8. js return 闭包为null_js 基础知识总结
  9. linux杂项设备+设备节点,linux driver ------ platform模型,通过杂项设备(主设备号是10)注册设备节点...
  10. 无线收发模块——NRF24L01
  11. 计算机 统计学考研,统计学考研科目有哪些
  12. android添加本地资源文件,本地html文件放置位置,android中加载本地Html文件
  13. 如何在Mac上打开和使用AirPlay,以便在更大的显示器上进行屏幕镜像?
  14. 韩国中产的今天!76岁的快递员,70岁的站街女......
  15. 青春无敌?那只是一瞬间
  16. Java实现 LeetCode 457 环形数组循环
  17. QtApplets-MyHook
  18. C++练习11:计算a+aa+aaa+aa…a+…
  19. 超好用的图片压缩网站
  20. 主题:考虑阶梯式碳交易与供需灵活双响应的综合能源系统优化调度

热门文章

  1. ISO20000认证材料大全
  2. 使用KDEConnect打通Linux和手机进行数据共享
  3. python爬虫旅游景点
  4. 从零开始学python数据分析与挖掘
  5. 设计师必看:如何快速戒掉晚睡(熬夜)强迫症
  6. 基于STM32单片机和Labview的温湿度波形实时显示串口助手(二)----手把手教学
  7. 百度地图下载、拼接与坐标改正思路与实例
  8. c语言程序快乐无极,PLSQL安装过程和SCOTT用户被锁的解决方法
  9. python天天向上和天天向下代码解析_天天向上的力量python(举一反三)
  10. 淘宝双11数据分析与预测课程案例:实验环境搭配