亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

java8 統計字符串字母個數的幾種方法總結(推薦)

2024-07-13 10:13:37
字體:
來源:轉載
供稿:網友

1.統計字符串字母個數(并且保持字母順序)

比如: aabbbbbbbba喔喔bcab cdabc deaaa

目前我做知道的有5種方式噢,如果你還有更好的,歡迎賜教

//方式1  public static void letterCount1(String s) {  	s=s.replaceAll(" +", "");	   //1,轉換成字符數組	  char c[]=s.toCharArray();	  	  Map<Character, Integer> tree=new TreeMap<Character, Integer>();	  for (int i = 0; i < c.length; i++) {		//第一次:a,1		//第二次:a,2 	   //2,獲取鍵所對應的值		Integer value=tree.get(c[i]);//		   反編譯:Integer value = (Integer)tree.get(Character.valueOf(c[i]));	   //3,存儲判斷		tree.put(c[i], value==null? 1:value+1);	  }	  	  //如果要求結果格式:a(5)b(4)c(3)d(2)e(1)	  StringBuilder sbu=new StringBuilder();	  for(Character key:tree.keySet()){		Integer count=tree.get(key);		sbu.append(key).append("(").append(count).append(")");	  }	  //將sbu轉換為字符串	  System.out.println(sbu.toString());	}     //方式2 使用流  //這個在測試特殊字符,比如/  /n時,他的順序會不對,這個是Map造成的  //解決辦法使用TreeMap  public static void letterCount2(String s) {  	s=s.replaceAll(" +", "");  	TreeMap<String, Long> result = Arrays.stream(s.split(""))    		             .sorted()//                     .collect(Collectors.groupingBy(Function.identity(),Collectors.counting()));                     .collect(Collectors.groupingBy(Function.identity(),TreeMap::new,Collectors.counting()));    System.out.println(result);  	  }    //方式3 使用Collections.frequency  //其實就是字符串變成集合存每個字串,把每個字串循環跟集合比較  public static void letterCount3(String s) {  	s=s.replaceAll(" +", "");  	List<String> list=Arrays.asList(s.split(""));  	Map<String,Integer> map=new TreeMap<String, Integer>();  	for (String str : list) {  		map.put(str, Collections.frequency(list, str));		}  	System.out.println(map);  }    //方式4  public static void letterCount4(String s) {  	s=s.replaceAll(" +", "");  	String[] strs = s.split("");  	Map<String,Integer> map=new TreeMap<String, Integer>();  	for (String str : strs) {  		map.put(str, stringCount(s, str));		}  	System.out.println(map);  }      //方式5  public static void letterCount5(String s) {  	s=s.replaceAll(" +", "");  	String[] strs = s.split("");  	Map<String,Integer> map=new TreeMap<String, Integer>();  	for (String str : strs) {  		map.put(str, stringCount2(s, str));		}  	System.out.println(map);  }        //巧用split 	public static int stringCount(String maxstr, String substr) {		// 注意		// 1.比如qqqq,沒有找到,則直接返回這個字符串		// 2.比如qqqjava,末尾沒有其他字符,這時也不會分割,所以可以添加一個空格		// 3.java11開頭沒有字符,沒有關系,自動空填充		// 4.對于特殊字符,要注意使用轉義符		int count = (maxstr + " ").split(substr).length - 1;		// System.out.println("/"" + minstr + "/"" + "字符串出現次數:" + count);		return count;	}  //如果要不區分大小寫,則compile(minstr,CASE_INSENSITIVE)	public static int stringCount2(String maxstr, String substr) {		int count = 0;		Matcher m = Pattern.compile(substr).matcher(maxstr);		while (m.find()) {			count++;		}    return count;	}  

2.統計字符串的單詞個數(只限英文)

這個其實跟上面一樣的,下面只寫一個簡潔的方法

 public static void wordStringCount(String s) {  	//這里開始是字符串,分割后變成字符串流    Map<String, Long> result = Arrays.stream(s.split("//s+"))    		             .map(word -> word.replaceAll("[^a-zA-Z]", ""))                        .collect(Collectors.groupingBy(Function.identity(),Collectors.counting()));    System.out.println(result);  	  }

3.統計文本單詞個數(只限英文)

 //統計一個文本中單詞的個數  public static void wordFileCount(String path) throws IOException{  	//這里一開始字符串流  	//先分割  	//在變成字符流  	//在篩選  	 Map<String, Long> result = Files.lines(Paths.get(path),Charset.defaultCharset())  			         .parallel()					 //字符串流--分割--字符串流					 .flatMap(str->Arrays.stream(str.split(" +"))) 					 .map(word -> word.replaceAll("[^a-zA-Z]", ""))					//去掉空					 .filter(word->word.length()>0) 				 .collect(Collectors.groupingBy(Function.identity(),Collectors.counting()));  	System.out.println(result);  }

4.其他不相干的

我們知道,可變參數列表,可以不傳參數的

對于

public void testName() {      System.out.println("a");   }    public void testName(String ... s) {        //不傳參數,s會默認初始化一個對象     System.out.println("b");  }

此時調用testName() 打印什么呢?,會打印a,會自動匹配參數真正為空的方法

以上這篇java8 統計字符串字母個數的幾種方法總結(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品国产一区| 亚洲精品天天看| 亚洲一区二区国产| 欧美激情女人20p| 国外成人免费在线播放| 亚洲大胆人体在线| 国产美女精彩久久| 日本亚洲欧洲色| 亚洲第一精品久久忘忧草社区| 免费av在线一区| 国产欧美中文字幕| 国产亚洲精品久久久久久| 亚洲精品一区二区在线| 九九精品视频在线观看| 精品国产91久久久| 欧美成aaa人片免费看| 国产精品∨欧美精品v日韩精品| 久久久黄色av| 国产精品对白刺激| 欧美精品在线视频观看| 亚洲午夜国产成人av电影男同| 在线一区二区日韩| 一区二区三区四区在线观看视频| 欧美一区二区影院| 日韩av一卡二卡| 久久国产精品电影| 98视频在线噜噜噜国产| 色婷婷综合成人| 亚洲女人天堂视频| 国产日韩欧美夫妻视频在线观看| 日本久久久久久久久久久| 久久久久国产精品免费网站| 亚洲男人天堂九九视频| 国产精品欧美一区二区三区奶水| 成人黄色生活片| 欧美三级欧美成人高清www| 久久久久久久久中文字幕| 欧美与黑人午夜性猛交久久久| 亚洲а∨天堂久久精品喷水| 欧美精品久久久久久久免费观看| 国产成人高潮免费观看精品| 成人国产亚洲精品a区天堂华泰| 欧美成人精品一区二区| 国产精品视频白浆免费视频| 九九热精品在线| 2019中文字幕在线| 国产精品啪视频| 国产女精品视频网站免费| 亚洲国产精品福利| 国产又爽又黄的激情精品视频| 91av免费观看91av精品在线| 日韩激情视频在线播放| 国产欧美中文字幕| 91av视频在线观看| 日韩动漫免费观看电视剧高清| 日韩国产高清污视频在线观看| 韩日欧美一区二区| 国产精品视频网| 国产日韩在线播放| 午夜精品一区二区三区在线视| 81精品国产乱码久久久久久| 91国产精品电影| 日韩av三级在线观看| 欧美精品在线视频观看| 在线精品视频视频中文字幕| 欧美性资源免费| 欧美特级www| 欧美成年人视频网站欧美| 日韩电影中文字幕| 欧美精品在线第一页| www.日韩视频| 欧美午夜精品久久久久久久| 亚洲自拍偷拍区| 亚洲精品videossex少妇| 日韩精品免费在线视频观看| 91久久精品国产91久久| 日韩欧美精品网站| 精品成人国产在线观看男人呻吟| 久久人人爽人人爽人人片av高清| 日韩在线www| 亚洲高清福利视频| 久久成人精品一区二区三区| 欧美精品在线观看91| 精品视频在线播放色网色视频| 国产成人亚洲综合91精品| 久久伊人色综合| 亚洲视频一区二区三区| 国产999在线观看| 亚洲精品视频在线观看视频| 51精品在线观看| 欧美激情国产日韩精品一区18| 日韩美女av在线| 亚洲a级在线播放观看| 日韩av在线最新| 91av视频导航| 免费av一区二区| 久久精品人人爽| 国产日韩欧美日韩大片| 91成人性视频| 亚洲精品网站在线播放gif| 九九热在线精品视频| 欧美在线精品免播放器视频| 在线视频欧美日韩精品| 在线激情影院一区| 欧美日韩国产区| 亚洲另类xxxx| 精品久久久一区| 热久久视久久精品18亚洲精品| 久久精品免费播放| 久久久女人电视剧免费播放下载| 成人av资源在线播放| 欧美亚洲国产成人精品| 久精品免费视频| 亚洲精品成人久久| 96精品久久久久中文字幕| 奇米四色中文综合久久| 色香阁99久久精品久久久| 26uuu亚洲国产精品| 久久久久久久久中文字幕| 福利精品视频在线| 91在线观看免费网站| 性色av一区二区三区| 欧美肥老太性生活视频| 国产精品久久久久久影视| 在线播放国产一区中文字幕剧情欧美| 中文字幕九色91在线| 2019国产精品自在线拍国产不卡| 91网站免费观看| 国产欧美va欧美va香蕉在| 最近2019好看的中文字幕免费| 久久精品国产69国产精品亚洲| 亚洲精品免费av| 亚洲成avwww人| 主播福利视频一区| 日韩福利视频在线观看| 亚洲国产精品va在线看黑人| 91亚洲人电影| 精品亚洲精品福利线在观看| 日韩电影第一页| 亚洲第一网站免费视频| 国产精品香蕉国产| 成人h视频在线观看播放| 亚洲欧美国产日韩中文字幕| 亚洲一区二区久久久| 在线日韩日本国产亚洲| 一本色道久久88亚洲综合88| 亚洲精品免费在线视频| 欧美最顶级丰满的aⅴ艳星| 精品magnet| 欧美一级淫片丝袜脚交| 中文字幕在线观看日韩| 亚洲欧洲日产国产网站| 日本精品免费观看| 欧美专区在线视频| 91av视频导航| 91精品久久久久久久久中文字幕| 91高潮精品免费porn| 91手机视频在线观看| 日韩性xxxx爱| 国产欧美在线播放| 亚洲爱爱爱爱爱| 亚洲男女性事视频| 亚洲国产欧美一区二区三区久久| 亚洲欧美日韩中文在线|