Java學習(6):輸入一串字串,分別統計出其中的中英文字母,空格,數字和其他字元的個數

來源:互聯網
上載者:User

標籤:others   []   nes   int   time   rac   system.in   oid   import   

 1 import java.util.Scanner; 2  3 /** 4  * 輸入一行字元,分別統計出其中的中英文字母,空格,數字和其他字元的個數 5  * 6  * @author xcx 7  * @time 2017年7月22日上午9:08:16 8  */ 9 public class Practice7 {10 11     public static void main(String[] args) {12         System.out.println("請輸入一串字串,我們將統計出其中的中英文字母,空格,數字和其他字元的個數");13         Scanner scanner = new Scanner(System.in);14         String string = scanner.nextLine();15 16         int numbersOfBlack = getNumbersOfBlack(string);17         int numbersOfChinese = getNumbersOfChinese(string);18         int numbersOfOthers = getNumbersOfOthers(string);19         int numbersOfFigure = getNumbersOfFigure(string);20         int numbersOfEnglish = getNumbersOfEnglish(string);21         22         System.out.println("數字有:" + numbersOfFigure + "個");23         System.out.println("英文有:" + numbersOfEnglish + "個");24         System.out.println("空格有:" + numbersOfBlack + "個");25         System.out.println("漢字有:" + numbersOfChinese + "個");26         System.out.println("其它有:" + numbersOfOthers + "個");27     }28 29     // 求字串中空格的個數30     public static int getNumbersOfBlack(String string) {31         // 記錄字串中空格的個數32         int numbersOfBlack = 0;33         // 將輸入的字串轉化為字元數組34         String[] strings = string.split("");35         for (int i = 0; i < strings.length; i++) {36             if (strings[i].matches(" ")) {37                 numbersOfBlack++;38             }39         }40         return numbersOfBlack;41     }42 43     // 求字串中漢字的個數44     public static int getNumbersOfChinese(String string) {45         // 記錄字串中漢字的個數46         int numbersOfChinese = 0;47         // 將輸入的字串轉化為字元數組48         String[] strings = string.split("");49         for (int i = 0; i < strings.length; i++) {50             if (strings[i].matches("[\u4e00-\u9fa5]")) {51                 numbersOfChinese++;52             }53         }54         return numbersOfChinese;55     }56 57     // 求字串中英語字母的個數58     public static int getNumbersOfEnglish(String string) {59         // 記錄字串中英語字母的個數60         int numbersOfEnglish = 0;61         // 將輸入的字串轉化為字元數組62         String[] strings = string.split("");63         for (int i = 0; i < strings.length; i++) {64             if (strings[i].matches("[a-zA-Z]")) {65                 numbersOfEnglish++;66             }67         }68         return numbersOfEnglish;69     }70 71     // 求字串中數位個數72     public static int getNumbersOfFigure(String string) {73         // 記錄字串中數位個數74         int numbersOfFigure = 0;75         // 將輸入的字串轉化為字元數組76         String[] strings = string.split("");77         for (int i = 0; i < strings.length; i++) {78             if (strings[i].matches("[0-9]")) {79                 numbersOfFigure++;80             }81         }82         return numbersOfFigure;83     }84 85     // 求字串中數位個數86     public static int getNumbersOfOthers(String string) {87         // 記錄字串中數位個數88         int numbersOfOthers = string.split("").length89                 - getNumbersOfBlack(string) - getNumbersOfChinese(string)90                 - getNumbersOfEnglish(string) - getNumbersOfFigure(string);91         return numbersOfOthers;92     }93 }

 

Java學習(6):輸入一串字串,分別統計出其中的中英文字母,空格,數字和其他字元的個數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.