字符频率程序不起作用

character frequency program does not work

import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;


@SuppressWarnings("unused")
public class Input {

    public static void main(String[] args) throws FileNotFoundException {
        @SuppressWarnings("resource")
        String input = new Scanner( new File("characterfreq.txt") ).useDelimiter("\A").next();
        char[] character = input.toCharArray();
        int size = character.length;
        int i = 0, j = 0;
        float count = 0;

        for (i=0; i < size; ++i) {
            count = 0;
            for (j = 0; j < size; ++j) {
                if (j < i && character[i] == character[j]) {
                    break;
                }
                if (character[j] == character[i]) 
                    count++;
            }
            if (j == size-1) {
                System.out.println(character[i]+" is present "+count/size+" times");
            }
        }
    }
}   

请你帮帮我,当我 运行 代码没有任何反应时,我的代码 运行 曾经很好,我添加了另一行并把它搞砸了,现在我不能找出我做错了什么

您在 for 循环中的第二个 if 构造中遗漏了代码中的左括号,插入括号,它应该可以工作:

if (character[j] == character[i]) {
    count++;
}

还可以更改您的打印语句以仅打印 count,如果您想要实际频率则不打印 count/size