天天看点

求一个字符串中各个大写字母的个数

输入一串字符串,例如:dfsdaf2312ADFSFG#$%^

输出每一个大写字母的个数

  1. 输入字符串
  2. 利用toCharArry方法转换为char字符串
  3. 构建TreeMap将char类型的A到Z存放在TreeMap的键中,值统一为0
  4. 遍历char字符串中的每一个元素,若一元素与TreeMap中键相同,则对应的值+1
  5. 遍历输出

    示例代码如下

import java.util.Scanner;
import java.util.TreeMap;
public class Main {
     public static void main(String[] args) {
      Scanner input=new Scanner(System.in);            
      String str=input.next();
      char ss[] = str.toCharArray();
      TreeMap<Character,Integer> tm=new TreeMap();
      for(int star=65;star<=90;star++){
                  tm.put((char)star, 0);
                  }
       for(int q=0;q<ss.length;q++){
                   char c = str.charAt(q);
                   if(!tm.containsKey(c)){ 
                                  tm.put(c, 0);
                                  }
                   else{ 
                            tm.put(c,tm.get(c)+1);
                            }
           }
           for(char a:tm.keySet()){
                       if(a>=65 &&a<=90)
                       System.out.println(a+"="+tm.get(a));
             }
      }
}