Map集合框架的练习

  Map是一个很重要的集合框架,它以键值对的方式存储,下面是一个Map集合的小练习,使用了keySet的取出方法。

 取出字符串的每一个字符,记录每一个字母出现的次数。使用Map集合框架。
package cn.mugglean.Test;

import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;


public class Maptext {
	
	public static void main(String[] args) {
		/*
		 * 获取字符串中每一个字母出现次数
		 * 输出如下格式 a(2)b(1)c(3)
		 */
		String text="abcdaaba";
		String getcount= getCount(text);
		System.out.println(getcount);

	}

	public static String getCount(String text) {
		//遍历字符数组,扔进Map。如果Map中有,则取出Map的值+1再扔进去。否则扔进去并把值写为1
		//1.字符串转成字符数组
		char[] stringArray=text.toCharArray();
		//2.创建map
		Map<Character,Integer> map=new TreeMap<Character,Integer>();
		//3.遍历字符数组并且扔进去
		for (int i = 0; i < stringArray.length; i++) {
			if(!(map.containsKey(stringArray[i]))) {
				map.put(stringArray[i], 1);
			}
			else {
			Integer count = map.get(stringArray[i]);
			map.put(stringArray[i],++count);
			}
			
		}
		//4.取出map
		StringBuilder resultString=new StringBuilder();
		Set<Character> keySet=map.keySet();
		for (Iterator<Character> it = keySet.iterator(); it.hasNext();) {
			Character key=it.next();
			resultString.append(key);
			resultString.append("("+map.get(key)+")");
		}
		return resultString.toString();
	}

}

  

猜你喜欢

转载自www.cnblogs.com/mugglean/p/9246468.html