输入一个字符串,统计字符串中每一个字符出现的个数(下面是用Map集合解决)

import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;  
  
public class Demo2{  
    public static void main(String[] vinox){
    Scanner sc=new Scanner(System.in);
        String str=sc.nextLine();  
         getCharCount(str);  //调用方法
      
       // System.out.println(s);  
    }  


    public static void getCharCount(String str){  
        //将字符串变成字符数组  
        char[] chs=str.toCharArray();  
              
        //定义map集合表  
        Map map=new TreeMap();  
  
        for(int i=0;i            //将数组中的字母作为键去查map表  
            Integer value=map.get(chs[i]);  
          
            //以上代码可用下面的替换:  
            int count=1;  
            if(value!=null) {  
                count=value+1;  
            }     
            map.put(chs[i],count);  
        }
showNum(map) ;
 }  
    public static void showNum(Map map){
    Set> es = map.entrySet();


Iterator> it = es.iterator();


while (it.hasNext()) {

// 返回的是封装了key和value对象的Map.Entry对象
Entry en = it.next();


// 获取Map.Entry对象中封装的key和value对象
Character key = en.getKey();
Integer value = en.getValue();


System.out.println("key=" + key + " value=" + value);
    }
//return null;
  }
}


运行结果:  

   输入一个字符串,统计字符串中每一个字符出现的个数(下面是用Map集合解决)_第1张图片

你可能感兴趣的:(输入一个字符串,统计字符串中每一个字符出现的个数(下面是用Map集合解决))