java實(shí)現(xiàn)統(tǒng)計(jì)字符串中字符及子字符串個(gè)數(shù)的方法示例
本文實(shí)例講述了java實(shí)現(xiàn)統(tǒng)計(jì)字符串中字符及子字符串個(gè)數(shù)的方法。分享給大家供大家參考,具體如下:
這里用java實(shí)現(xiàn)統(tǒng)計(jì)字符串中的字符(包括數(shù)字、大寫字母、小寫字母以及其他字符)個(gè)數(shù),以及字符串的子字符串的個(gè)數(shù)。
運(yùn)行效果圖如下:
具體代碼如下:
import java.util.Scanner; public class Counter { static Scanner scanner = new Scanner(System.in); public static void count(String s) { int low, upper, num, others; low = upper = num = others = 0; for (int i = 0; i < s.length(); i++) { if (Character.isDigit(s.charAt(i))) { num++; continue; } if (Character.isLowerCase(s.charAt(i))) { low++; continue; } if (Character.isUpperCase(s.charAt(i))) { upper++; continue; } else { others++; } } System.out.println(" 大寫字母的個(gè)數(shù)為:" + upper + "\n 小寫字母的個(gè)數(shù)為:" + low+ "\n 數(shù)字的個(gè)數(shù)為: " + num + "\n 其他字符的個(gè)數(shù)為: " + others); } public static void subCounter(String str1, String str2) { int counter = 0; for (int i = 0; i <= str1.length() - str2.length(); i++) { if (str1.substring(i, i + str2.length()).equalsIgnoreCase(str2)) { counter++; } } System.out.println("子字符串的個(gè)數(shù)為: " + counter); } public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("請(qǐng)輸入一個(gè)字符串:"); String string = scanner.nextLine(); count(string); System.out.println("-----------------------------"); // 查詢?cè)谶@個(gè)字符串中存在多少個(gè)子字符串str。 System.out.println("請(qǐng)輸入一個(gè)您想查詢的子字符串:"); String str = scanner.nextLine(); subCounter(string, str); } }
PS:這里再為大家推薦幾款在線字符統(tǒng)計(jì)工具供大家參考:
在線字?jǐn)?shù)統(tǒng)計(jì)工具:
http://tools.jb51.net/code/zishutongji
在線字符統(tǒng)計(jì)與編輯工具:
http://tools.jb51.net/code/char_tongji
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章
springboot2+es7使用RestHighLevelClient的示例代碼
本文主要介紹了springboot2+es7使用RestHighLevelClient的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07mybatis-plus報(bào)錯(cuò)Not Found TableInfoCache異常問題
在集成百度uid-generator過程中,MyBatis-Plus報(bào)錯(cuò)NotFoundTableInfoCache異常,解決方法:檢查實(shí)體類是否繼承了官方model,確保實(shí)體類對(duì)應(yīng)的mapper已正確注入,在使用@Component注解時(shí),應(yīng)保證相關(guān)依賴已注入2024-09-09Java 方法引用與ambda表達(dá)式的聯(lián)系
這篇文章主要介紹了Java 方法引用與ambda表達(dá)式的聯(lián)系,方法引用通過方法的名字來指向一個(gè)方法, 方法引用同樣是Java 8 引入的新特性,而且和Lambda表達(dá)式有著不小的聯(lián)系,它同樣可以根據(jù)上下文進(jìn)行推導(dǎo),進(jìn)而可以簡化代碼2022-06-06Mybatis-Plus的條件構(gòu)造器QueryWrapper & UpdateWrapper示例詳解
Mybatis-Plus的條件構(gòu)造器QueryWrapper和UpdateWrapper為開發(fā)者提供了強(qiáng)大、靈活的條件構(gòu)建工具,能夠大大簡化數(shù)據(jù)庫操作的代碼,通過本文的介紹,讀者可以更加深入地理解這兩個(gè)條件構(gòu)造器的使用方法,并在實(shí)際項(xiàng)目中靈活應(yīng)用,感興趣的朋友跟隨小編一起看看吧2024-01-01Java web項(xiàng)目中的強(qiáng)制登錄功能實(shí)現(xiàn)代碼
本文給大家分享Java web項(xiàng)目中的強(qiáng)制登錄功能實(shí)現(xiàn)代碼,為了避免直接進(jìn)入項(xiàng)目中存在的頁面,使用filter過濾器,代碼簡單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-11-11SpringMVC統(tǒng)一異常處理實(shí)例代碼
這篇文章主要介紹了SpringMVC統(tǒng)一異常處理實(shí)例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Java 對(duì) Properties 文件的操作詳解及簡單實(shí)例
這篇文章主要介紹了Java 對(duì) Properties 文件的操作詳解及簡單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-02-02