s123456m1 2016-05-13 01:42 采纳率: 100%
浏览 1437
已采纳

新手,求助大神快快现身!

给定一个字符串“today is a special day”,长度任意,要求找出其出现次数最多的字符及计算次数。老师说让自己看帮助文档,charactor,表示看不懂图片说明

  • 写回答

7条回答 默认 最新

  • 开发小菜鸟 2016-05-13 02:27
    关注

    思路:
    1、将当前的字符串转换为字符数组;
    2、创建一个HashMap,key为每一个字符,value为字符出现的字数;
    3、遍历当前的数组,将数组中每一个不重复的字符作为HashMap对象中的key,判断当前的HashMap对象中是否存在当前的key
    1)若存在,取出对应的value,将value值加1后,再保存到对应的key上;
    2)若不存在,则将当前的key值对应的value赋值为1;
    4、遍历统计结束的HashMap对象,取出所有key中value最大的对象即可;

    代码如下:

    public static void main(String[] args) {
    String string = "Thinking in Java";
    char[] ch = string.toCharArray();
    Map result = new HashMap();
    for (int i = 0; i < ch.length; i++) {
    if (result.containsKey(ch[i])) {
    int count = result.get(ch[i]) + 1;
    result.put(ch[i], count);
    } else {
    result.put(ch[i], 1);
    }
    }
    Character maxChar = null;
    Integer maxCount = 0;
    for (Entry entry : result.entrySet()) {
    if (entry.getValue() > maxCount) {
    maxChar = entry.getKey();
    maxCount = entry.getValue();
    }
    }

        System.out.println("字符: " + maxChar + " 出现的字数最多,为 "  + maxCount + " 次");
    }
    

    希望对你有帮助!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 聚类分析或者python进行数据分析
  • ¥15 如何用visual studio code实现html页面
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?