牛骨文教育服务平台(让学习变的简单)
博文笔记

计算字符串中各个字符出现的次数

创建时间:2014-01-23 投稿人: 浏览次数:572

import java.util.HashMap;
import java.util.Map;

public class Test {
    public static void main(String[] args) {
        String s = "sdfjkaljttqnzkld你好你不好我好";
        Map<Character, Integer> m = new HashMap<Character, Integer>();
 
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            int count = 1;
            if (m.containsKey(c)) {
                count += m.get(c);
            }
            m.put(c, count);
        }
 
        for (Map.Entry<Character, Integer> e : m.entrySet()) {
            System.out.println(e.getKey() + " : " + e.getValue());
        }
    }
}

 

 

C版本

C语言实现统计字符串中每个字符出现的次数 -- 巧妙!
来源: 余泽喜ubuntu的日志
#include <stdio.h>

void func(const char *src)
{
    unsigned char all[256] = {0};   
    int i;
   
    if (src == NULL)
        return;
   
    while (*src)
    {
        //++all[*src];
        //++src;
        all[*src]++;
        src++;
    }

    for (i = 0; i < 256; i++)
    {
        if (all[i] != 0)           
        {
            printf("字符%c出现次数: %d ", i, all[i]);
        }
    }

}

int
main(void)
{
    char ss[100]="aaaabbbbbxxxxxxyxxxa123123##@$$return^^^!@@!uq";

    func(ss);

    return 0;
}
运行:

字符!出现次数: 2
字符#出现次数: 2
字符$出现次数: 2
字符1出现次数: 2
字符2出现次数: 2
字符3出现次数: 2
字符@出现次数: 3
字符^出现次数: 3
字符a出现次数: 5
字符b出现次数: 5
字符e出现次数: 1
字符n出现次数: 1
字符q出现次数: 1
字符r出现次数: 2
字符t出现次数: 1
字符u出现次数: 2
字符x出现次数: 9
字符y出现次数: 1

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。