【问题标题】:Java: Count occurrences of characters in text fileJava:计算文本文件中字符的出现次数
【发布时间】:2014-12-02 04:51:40
【问题描述】:

这是一个程序的一部分,它将计算文本文件中每个字母的出现次数。我希望它打印 A:4 B:23 C:32 之类的东西,而是打印 A:0B:0C:0A:0B:0C:0A:0B:0C:0 甚至找不到每个的所有出现信。我在这里做错了什么?感谢您的帮助!

             char ch = line.charAt(0);

                int Acounter=0;
                int Bcounter=0;
                int Ccounter=0;
                switch (ch)
                {
                    case 'A':
                       Acounter++;
                        break;
                    case 'B':
                        Bcounter++;
                        break;
                    case 'C':
                        Ccounter++;
                        break;
                }

             bw.write ("A:" + Acounter);
             bw.write ("B:" + Bcounter);
             bw.write ("C:" + Ccounter);

【问题讨论】:

  • 看起来您只检查该行的第一个字符 (line.charAt(0))。
  • 遍历文件所有字符的循环在哪里?

标签: java text count character


【解决方案1】:

char ch[] = s.toCharArray(); Map map = new HashMap();

    for (int i = 0; i < ch.length; i++) {
        int count = 0;
        for (int j = 0; j < ch.length; j++) {
            if (ch[i] == ch[j])
                count++;
        }
        map.put(ch[i], count);

    }
    Iterator it = map.entrySet().iterator();
    while (it.hasNext()) {
        Map.Entry pairs = (Map.Entry) it.next();
        System.out.println("count of " + pairs.getKey() + " = "
                + pairs.getValue());
    }

【讨论】:

    猜你喜欢
    • 2010-12-08
    • 1970-01-01
    • 2013-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-28
    相关资源
    最近更新 更多