集合HashMap來統計單個字在字符串中出現的次數(用hashmap來統計)
阿新 • • 發佈:2018-05-13
out new sta rar value integer .get AC try
/*
* 統計單個字在字符串中出現的次數(用hashmap來統計)
*
* 分析 :
* 1.先建立一個字符串
* 2.把字符串轉換為數組
* 3.創建一個hashmap
* 4.遍歷數組,得到每個字符
* 5、拿得到的字符作為健到集合中去找值。得到返回值
* 是null:把字符作為鍵,1為值存入集合
* 不是null: 則把值加1重新寫入集合
* 6.遍歷輸出
*
*/
import java.util.HashMap; import java.util.Map.Entry; import java.util.Set; /** * 統計單個字在字符串中出現的次數(用hashmap來統計) * @author ma * */ public class HashMapDemo5 { /* * 統計單個字在字符串中出現的次數(用hashmap來統計) * * 分析 : * 1.先建立一個字符串 * 2.把字符串轉換為數組 * 3.創建一個hashmap * 4.遍歷數組,得到每個字符 * 5、拿得到的字符作為健到集合中去找值。得到返回值 * 是null:把字符作為鍵,1為值存入集合 * 不是null: 則把值加1重新寫入集合 * 6.遍歷輸出 * */ public static void main(String[] args) { //1.先建立一個字符串 String str = "真真真真真slkg在jfsjsht中j中ghr中國lsh你izx你lf在hfnaj產產產科"; //2.把字符串轉換為數組 char[] charArr = str.toCharArray(); //3.創建一個hashmap HashMap<Character, Integer> hm = new HashMap<Character, Integer>(); //4.遍歷數組,得到每個字符 for (int i = 0; i < charArr.length; i++) { //5、拿得到的字符作為健到集合中去找值。 Integer value = hm.get(charArr[i]); if(value ==null){ //是null:把字符作為鍵,1為值存入集合, hm.put(charArr[i], 1); }else{ //得到返回值不是null: 則把值加1重新寫入集合 value ++; hm.put(charArr[i], value); } } //6.遍歷輸出 Set<Entry<Character, Integer>> set = hm.entrySet(); for (Entry<Character, Integer> entry : set) { System.out.println(entry); } } }
輸出結果:
你=2
a=1
f=3
g=2
產=3
在=2
h=4
i=1
j=4
k=1
l=3
中=3
n=1
科=1
r=1
s=4
t=1
x=1
z=1
國=1
真=5
集合HashMap來統計單個字在字符串中出現的次數(用hashmap來統計)