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


 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("").length
89                 - getNumbersOfBlack(string) - getNumbersOfChinese(string)
90                 - getNumbersOfEnglish(string) - getNumbersOfFigure(string);
91         return numbersOfOthers;
92     }
93 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM