import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import qian.com.PrinTool;
//定義一個判斷字符串中 大寫字母 小寫字母 數字和其他字符的接口,以便規范其他類的判斷字符串所含各種字符個數;
interface DecideNum{
public void decideNum(String str);
}
public class StatDemo implements DecideNum {
public void decideNum(String str){
int upperNum = 0;
int lowerNum = 0;
int intNum = 0;
int otherNum = 0;
for(int i =0;i
//判斷大寫字母
if((int)str.charAt(i)>64 && (int)str.charAt(i)<91){
upperNum = upperNum+1;
}
//判斷小寫字母
else if((int)str.charAt(i)>96 && (int)str.charAt(i)<123){
lowerNum = lowerNum+1;
}
//判斷數字
else if((int)str.charAt(i)>47 && (int)str.charAt(i)<58){
intNum = intNum+1;
}
//判斷其他字符個數
else{
otherNum = otherNum+1;
}
}
PrinTool.pri("大寫字母個數為: "+upperNum);
PrinTool.pri("小寫字母個數為: "+lowerNum);
PrinTool.pri("數字個數為: "+intNum);
PrinTool.pri("其他字符個數為: "+otherNum);
}
public static void main(String [] args) throws IOException{
String st;
//接受鍵盤輸入:
System.out.print("請輸入要判斷的字符串:");
BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
st = br.readLine();
StatDemo stat =new StatDemo();
stat.decideNum(st);
}
}
本文在學到了策略設計模式后,又將這個方法改成了策略設計模式(見另一篇文章),雖然繁瑣了許多,只在表達策略設計模式的思想。。