<code>package</code> <code>practiceGO;</code>
<code>import</code> <code>java.util.Scanner;</code>
<code>/*</code>
<code> </code><code>* 3.輸入一個字元串,統計該字元串中分别包含多少個數字,多少個字母,多少個其他字元</code>
<code> </code><code>*/</code>
<code>public</code> <code>class</code> <code>Cto {</code>
<code> </code><code>public</code> <code>static</code> <code>void</code> <code>main(String[] args) {</code>
<code> </code><code>int</code> <code>englishCount = </code><code>0</code><code>;</code><code>// 英文字母個數</code>
<code> </code><code>int</code> <code>spaceCount = </code><code>0</code><code>;</code><code>// 空格個數</code>
<code> </code><code>int</code> <code>numCount = </code><code>0</code><code>;</code><code>// 數字個數</code>
<code> </code><code>int</code> <code>otherCount = </code><code>0</code><code>;</code><code>// 其他字元個數</code>
<code> </code><code>Scanner sc = </code><code>new</code> <code>Scanner(System.in);</code>
<code> </code><code>System.out.println(</code><code>"請您輸入一行字元:"</code><code>);</code>
<code> </code><code>String str = sc.nextLine();</code><code>// 取得控制台輸入的一行字元</code>
<code> </code><code>char</code><code>[] ch = str.toCharArray();</code><code>// 把取到的字元串變成一個char數組</code>
<code> </code><code>for</code> <code>(</code><code>int</code> <code>i = </code><code>0</code><code>; i < ch.length; i++) {</code>
<code> </code><code>if</code> <code>(Character.isLetter(ch[i])) {</code>
<code> </code><code>// 判斷是否為字母</code>
<code> </code><code>englishCount++;</code>
<code> </code><code>} </code><code>else</code> <code>if</code> <code>(Character.isSpaceChar(ch[i])) {</code>
<code> </code><code>// 判斷是否為空格</code>
<code> </code><code>spaceCount++;</code>
<code> </code><code>} </code><code>else</code> <code>if</code> <code>(Character.isDigit(ch[i])) {</code>
<code> </code><code>// 判斷是否為數字</code>
<code> </code><code>numCount++;</code>
<code> </code><code>} </code><code>else</code> <code>{</code>
<code> </code><code>// 以上都不是則認為是其他字元</code>
<code> </code><code>otherCount++;</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>System.out.println(</code><code>"字母的個數:"</code> <code>+ englishCount);</code>
<code> </code><code>System.out.println(</code><code>"數字的個數:"</code> <code>+ numCount);</code>
<code> </code><code>System.out.println(</code><code>"空格的個數:"</code> <code>+ spaceCount);</code>
<code> </code><code>System.out.println(</code><code>"其他字元的個數:"</code> <code>+ otherCount);</code>
<code> </code><code>}</code>
<code>}</code>
測試:
<code>請您輸入一行字元:</code>
<code>yeqc19940112</code><code>@qq</code><code>.com</code>
<code>字母的個數:</code><code>9</code>
<code>數字的個數:</code><code>8</code>
<code>空格的個數:</code><code>0</code>
<code>其他字元的個數:</code><code>2</code>
<code>yeqc @@</code><code>@123456AAA</code>
<code>字母的個數:</code><code>7</code>
<code>數字的個數:</code><code>6</code>
<code>空格的個數:</code><code>2</code>
<code>其他字元的個數:</code><code>3</code>
注:在java中有三個類負責對字元的操作:Character、String、StringBuffer。其中Character類是對單個字元進行操作,String是對一個字元序列的操作,StringBuffer是對一串字元進行操作。
1.Character的聲明
<code>public</code> <code>final</code> <code>class</code> <code>Character </code><code>extends</code> <code>Object </code><code>implements</code> <code>Serializable,Comparable<Character></code>
2.Character的構造方法
<code>public</code> <code>Character (</code><code>char</code><code>){</code>
3.常用方法
<code>toString()方法</code>
4.通常情況下,我們使用字元時,有時需要使用原始資料類型的字元
<code>char</code> <code>ch = </code><code>'a'</code><code>;</code>
<code>char</code> <code>uniChar = </code><code>'\u039A'</code><code>;</code>
<code>char</code><code>[] charArray = {</code><code>'a'</code><code>,</code><code>'b'</code><code>,</code><code>'c'</code><code>,</code><code>'d'</code><code>,</code><code>'e'</code><code>};</code>
5.Character類提供了一些有用的類(即靜态)方法操作字元。可以建立一個字元的字元構造的對象
本文轉自yeleven 51CTO部落格,原文連結:http://blog.51cto.com/11317783/1762308
<code>racter(</code><code>'a'</code><code>);</code>