java - 打印独特的字符及其出现

标签 java arrays char

我是 java 和编程的新手。我已经分配了一个任务来计算唯一字符的出现次数。我只需要使用 大批。我已经做了流动的代码 -

public class InsertChar{

    public static void main(String[] args){

        int[] charArray = new int[1000];
        char[] testCharArray = {'a', 'b', 'c', 'x', 'a', 'd', 'c', 'x', 'a', 'd', 'a'};

        for(int each : testCharArray){

            if(charArray[each]==0){
                charArray[each]=1;
            }else{
                ++charArray[each];
            }

        }

        for(int i=0; i<1000; i++){
            if(charArray[i]!=0){
                System.out.println( i +": "+ charArray[i]);
            }
        }
    }

}  

对于 testCharArray 输出应该是 -

a: 4
b: 1
c: 2
d: 2
x: 2  

但它给了我以下输出 -

97: 4
98: 1
99: 2
100: 2
120: 2  

我该如何解决这个问题?

最佳答案

iint,因此您要打印每个 char 的整数值。您必须将其转换为 char 才能看到字符。

改变

System.out.println( i +": "+ charArray[i]);

System.out.println( (char)i +": "+ charArray[i]);

关于java - 打印独特的字符及其出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30550399/

相关文章:

java - Web 服务契约首先逆转 - 引用 WSDL 中的 Java 类

c# - 从一个数组中删除其索引存在于另一个数组中的元素

javascript - SomeArray.sort ( function() { ... } ) 语句背后的逻辑是什么?

arrays - 候选人在数组中寻找多数元素

c - 在C中将字符串添加到char数组

java - 在java中对整个脚本运行pig解释命令

java - Maven 插件执行顺序

java - Spring Framework 在 JBoss 上看不到 cglib

mysql - 服务器更改后mysql的特殊字符,UTF8?

c++ - 将 char* 输出到 std::string C++