<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>