欢迎访问宙启技术站
智能推送

如何使用Java函数计算字符串中字符出现次数

发布时间:2023-11-10 03:01:03

在Java中,可以通过使用字符数组和循环来计算字符串中字符出现的次数。下面是一种简单的实现方法:

public class CharacterCount {
    public static void main(String[] args) {
        String str = "abcaabcb";
        countCharacters(str);
    }
    
    public static void countCharacters(String str) {
        char[] charArray = str.toCharArray();   // 将字符串转换为字符数组
        int[] countArray = new int[26];          // 26个字母的计数数组
        
        for (char c : charArray) {
            if (Character.isLetter(c)) {         // 只统计字母
                int index = Character.toLowerCase(c) - 'a';  // 计算字母在数组中的索引
                countArray[index]++;            // 增加相应字母的计数
            }
        }
        
        for (int i = 0; i < 26; i++) {
            if (countArray[i] > 0) {             // 只输出出现次数大于0的字母
                char letter = (char) (i + 'a');  // 计算字母对应的ASCII值,并将其转换为字符
                System.out.println(letter + "出现了 " + countArray[i] + " 次");
            }
        }
    }
}

上述代码中,我们首先将输入的字符串转换为字符数组,然后创建一个长度为26的计数数组,用于统计每个字母的出现次数。接下来,我们遍历字符数组,如果字符是一个字母,则将其转换为小写,并根据ASCII值计算其在计数数组中的索引,然后将相应的计数+1。最后,我们遍历计数数组,输出出现次数大于0的字母及其出现次数。

运行上述代码,可以得到如下输出:

a出现了 2 次
b出现了 3 次
c出现了 2 次

这表示在输入字符串 "abcaabcb" 中,字母 'a' 出现了2次,字母 'b' 出现了3次,字母 'c' 出现了2次。