Java編程實(shí)現(xiàn)統(tǒng)計(jì)一個(gè)字符串中各個(gè)字符出現(xiàn)次數(shù)的方法
本文實(shí)例講述了Java編程實(shí)現(xiàn)統(tǒng)計(jì)一個(gè)字符串中各個(gè)字符出現(xiàn)次數(shù)的方法。分享給大家供大家參考,具體如下:
import java.util.Iterator; import java.util.Set; import java.util.TreeMap; public class TreeMapDemo { //統(tǒng)計(jì)一個(gè)字符串中相應(yīng)字符出現(xiàn)的次數(shù) public static void main(String[] args) { // System.out.println("腳本之家測(cè)試結(jié)果:"); String s = "aagfagdlkerjgavpofjmvglk我是你的"; //調(diào)用自定義方法來(lái) 統(tǒng)計(jì)相應(yīng)字符出現(xiàn)的次數(shù) method(s); } private static void method(String s) { //定義 一個(gè)容器 TreeMap<Character,Integer> tm = new TreeMap<Character,Integer>(); //將這TreeMap中的key全部取出來(lái),然后儲(chǔ)存到set集合中去 Set<Character> st = tm.keySet(); //將所需要統(tǒng)計(jì)的字符串轉(zhuǎn)換成一個(gè)字符數(shù)組 char[] c = s.toCharArray(); //通過(guò)for循環(huán)逐一統(tǒng)計(jì)每個(gè)字符出現(xiàn)的次數(shù) for(int x=0;x<c.length;x++) { if(!st.contains(c[x])) { tm.put(c[x], 1); } else { tm.put(c[x], tm.get(c[x])+1); } } //調(diào)用自定義方法在控制臺(tái)上輸出統(tǒng)計(jì)信息 printMapDemo(tm); } private static void printMapDemo(TreeMap<Character, Integer> tm) { // TODO Auto-generated method stub Set<Character> st = tm.keySet(); Iterator<Character> ti = st.iterator(); for(;ti.hasNext();) { char key = ti.next(); System.out.println(key+"("+tm.get(key)+")"); } } }
運(yùn)行結(jié)果:
PS:這里再為大家推薦2款非常方便的統(tǒng)計(jì)工具供大家參考使用:
在線(xiàn)字?jǐn)?shù)統(tǒng)計(jì)工具:
http://tools.jb51.net/code/zishutongji
在線(xiàn)字符統(tǒng)計(jì)與編輯工具:
http://tools.jb51.net/code/char_tongji
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- java統(tǒng)計(jì)字符串中重復(fù)字符出現(xiàn)次數(shù)的方法
- java統(tǒng)計(jì)字符串中指定元素出現(xiàn)次數(shù)方法
- java中對(duì)字符串每個(gè)字符統(tǒng)計(jì)的方法
- java 字符串詞頻統(tǒng)計(jì)實(shí)例代碼
- java實(shí)現(xiàn)統(tǒng)計(jì)字符串中字符及子字符串個(gè)數(shù)的方法示例
- Java簡(jiǎn)單統(tǒng)計(jì)字符串中漢字,英文字母及數(shù)字?jǐn)?shù)量的方法
- Java統(tǒng)計(jì)字符串中字符出現(xiàn)次數(shù)的方法示例
- java8 統(tǒng)計(jì)字符串字母?jìng)€(gè)數(shù)的幾種方法總結(jié)(推薦)
- java統(tǒng)計(jì)字符串單詞個(gè)數(shù)的方法解析
- Java實(shí)現(xiàn)統(tǒng)計(jì)字符串出現(xiàn)的次數(shù)
相關(guān)文章
JAVA多線(xiàn)程之方法 JOIN詳解及實(shí)例代碼
這篇文章主要介紹了JAVA多線(xiàn)程之方法 JOIN詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-02-02使用MyEclipse 開(kāi)發(fā)struts2框架實(shí)現(xiàn)登錄功能(結(jié)構(gòu)教程)
這篇文章主要介紹了使用MyEclipse 開(kāi)發(fā)struts2框架實(shí)現(xiàn)登錄功能(結(jié)構(gòu)教程)的相關(guān)資料,需要的朋友可以參考下2016-03-03dubbo?filter中有關(guān)bean注入和配置文件讀取方式
這篇文章主要介紹了dubbo?filter中有關(guān)bean注入和配置文件讀取方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05詳解IDEA 啟動(dòng)tomcat 端口占用原因以及解決方法( 使用debug模式)
這篇文章主要介紹了詳解IDEA 啟動(dòng)tomcat 端口占用原因以及解決方法( 使用debug模式) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08SpringCloud通過(guò)Nacos實(shí)現(xiàn)注冊(cè)中心與遠(yuǎn)程服務(wù)調(diào)用詳解流程
如果不滿(mǎn)足eureka注冊(cè)中心,那么本文記錄的Nacos是不二之選。本文主要記錄Springboot基于Nacos實(shí)現(xiàn)注冊(cè)中心以及遠(yuǎn)程服務(wù)調(diào)用2022-07-07log4j2的高并發(fā)死鎖問(wèn)題配置優(yōu)化方式
這篇文章主要介紹了log4j2的高并發(fā)死鎖問(wèn)題配置優(yōu)化方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12