/**
*StaticString.java 2016年12月1日上午10:34:20
*@Copyright:Copyright © VIVO Communication Technology Co., Ltd. All rights reserved.
*@Company:http://www.vivo.com.cn/
*
*/
package demo;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* @Title:
* @Description:
* @Author:Administrator
* @Since:2016年12月1日
* @Version:1.0
*/
public class StaticString {
public static void main(String[] args) {
String str = "aabbccdddeff";
char[] strs = str.toCharArray();
Map<Character, Integer> map = new HashMap<Character, Integer>();
for (char c : strs) {
if (map.containsKey(c)) {
map.put(c, map.get(c) + 1);
} else {
map.put(c, 1);
}
}
// 找到出现次数最多的(可能有多个)
int max = 1;
for (Integer value : map.values()) {
if (value >= max) {
max = value;
}
}
// 再一次遍历拿出它的key
for (Entry<Character, Integer> c : map.entrySet()) {
if (max == c.getValue()) {
System.err.println(c.getKey() + "出现" + max + "次");
}
}
// map遍历
// 一 .通过entrySet 可以访问key 和value
for (Entry<Character, Integer> c : map.entrySet()) {
// System.out.println(c.getKey() + ":" + c.getValue());
}
// 2. 同过keyset()遍历map 可以访问key 和value
for (Character c : map.keySet()) {
// System.out.println(c + ":" + map.get(c));
}
// 3.通过迭代器遍历
Iterator<Entry<Character, Integer>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<Character, Integer> entry = it.next();
// System.out.println("key= " + entry.getKey() + " value= " +
// entry.getValue());
}
// 4.map.value()
for (Integer value : map.values()) {
// System.out.println(value);
}
}
}