经典算法题(中级)-----自定义函数之字符类型统计
生活随笔
收集整理的這篇文章主要介紹了
经典算法题(中级)-----自定义函数之字符类型统计
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文將為大家帶來“自定義函數之字符類型統計”算法的一個解法與詳細解釋,方法不唯一,本篇文章只列舉出一種方法,可以先練習,練習之后查看代碼,這樣更加有助于提高。
文章目錄
- 一、題目
- 二、解題思路
- 三、代碼(含詳細注解)
一、題目
題目描述: 編寫一函數,由實參傳來一個字符串 統計此字符串中字母、數字、空格和其它字符的個數 在主函數中輸入字符串以及輸出上述結果。 只要結果,別輸出什么提示信息。輸入: 一行字符串輸出: 統計數據,4個數字,空格分開樣例輸入: !@#$%^QWERT 1234567樣例輸出: 5 7 4 6運行結果:
以下是本題的解題思路,僅供參考。
二、解題思路
看到這道題,無疑還是將字符串變成字符數組,對每個字符進行判斷。
(1)做這道題,就要知道什么是字母,什么是數字,什么是字符。
(2)如果知道判斷的條件,則用if else-if進行判斷即可。
三、代碼(含詳細注解)
public class SeptemberFifteen40 {public static void main(String[] args) {//創建控制臺掃描器Scanner input = new Scanner(System.in);/*一般輸入空格或者換行符號是默認輸入結束,所以要輸入空格可以用nextLine(),表示輸入一行內容,只有遇到換行時結束,這是這個題目需要注意的*/String str = input.nextLine();//將字符串傳給自定義函數count(str);}//自定義一個函數countpublic static void count(String str){//將字符串轉為字符數組char c [] = str.toCharArray();//定義字母、數字、空格和其它字符的個數int number=0;int letter=0;int space=0;int other=0;//循環統計for(int i=0 ; i<c.length ;i++){if(c[i]>='0'&&c[i]<='9'){//判斷數字number++;}else if(c[i]>='a'&&c[i]<='z'||c[i]>='A'&&c[i]<='Z'){//判斷字母letter++;}else if(c[i]==' '){space++;}else{other++;}}//依次輸出字母,數字,空格,其他字符System.out.println(letter+" "+number+" "+space+" "+other);} }希望本篇文章可以給您帶來收獲,有興趣的小伙伴點個關注一起學習吧。
總結
以上是生活随笔為你收集整理的经典算法题(中级)-----自定义函数之字符类型统计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 通过nginx代理实现内网访问百度地图方
- 下一篇: 【项目管理】如何定义开放性问题和如何在项