统计字符串中每个字符出现的次数


package LESSON11;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Scanner;
public class exercise1 {
    /**
    使用Scanner从控制台读取一个字符串,统计字符串中每个字符出现的次数
     */
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String str=sc.nextLine();
        char ch[]=str.toCharArray();
        HashMap<Character, Integer> map=new HashMap();
//        for (int i = 0; i < ch.length; i++) { 
//            int count=1;
//            for (int j = i+1; j < ch.length; j++) {
//                if(ch[i]==ch[j]){
//                    count++;    //这样写最后相同的键的值会被覆盖,所有的value都为1            
//                }    
//                
//            }
//            map.put(ch[i], count);        
//        }    
        //abcda
        int num=0;
        for (int i = 0; i < ch.length; i++) {
            if(!map.containsKey(ch[i])){//判断集合中是否不包含某个字符
                num=1;                
            }else{
                num=map.get(ch[i]);//获取该字符已经出现的次数
                num++;                                
            }
            map.put(ch[i], num);//每次循环都会存储到map集合中            
        }
        System.out.println(map);                                                                                        
    }
}

运行结果


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM