任意の文字で構成される文字列に、各文字の出現回数を統計します。

1200 ワード

/**
	 *                         ,
	 *   :String str = "java@list#    ,jiuzhemechangle",
	 *       for   while  ;
	 */
	
	public static void countChar(String str){
		//  map     ,         
		Map map = new HashMap();
		for(int i= 0; i < str.length(); i++){
			//  key           
			if(!map.containsKey(str.charAt(i))){
				map.put(str.charAt(i), 1);
			}else{
				//        ,   value  1
				Integer k = (Integer)map.get(str.charAt(i));
				k++;
				map.put(str.charAt(i), k);
			}
		}
		//  map         :
		//      Map.entrySet  ,       
		Set entrySet = map.entrySet();
		for (Iterator iterator = entrySet.iterator(); iterator.hasNext();) {
			Map.Entry entry = (Map.Entry) iterator.next();
			//    Map.Entry     key value  
			System.out.println("  ‘"+entry.getKey()+"’   "+entry.getValue()+" ");
		}
	}
以下は呼び出しのメール方法です。
public static void main(String[] args) {
		String str = "java@list#    ,jiuzhemechangle";
		countChar(str);
	}