题解 | #统计字符#

统计字符

https://www.nowcoder.com/practice/539054b4c33b4776bc350155f7abd8f5

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        //97-122 a-z   65-90 A-Z
        //32 空格
        //48-57 0-9
        //其他
        String str=in.nextLine();
        int[] ary=new int[4];//创建int型空数组所有值默认=0
        char ch;
        for(int i=0;i<str.length();i++){
            ch=str.charAt(i);
            if((ch>=65 && ch<=90)|| (ch>=97 && ch<=122)){
                ary[0]++;
            }else if(ch==32){
                ary[1]++;
            }else if(ch>=48 && ch<=57){
                ary[2]++;
            }else{
                ary[3]++;
            }
        }
        for(int res:ary){
            System.out.println(res);
        }
    }
}

枚举法: 依次枚举出每一个字符的ascll码值,判断属于哪项就放哪里

本题只有4组,所有int[4]完全没问题

全部评论

相关推荐

点赞 评论 收藏
分享
头像
02-26 13:58
门头沟学院 Java
北城_阿亮:把八股背一背,包装一下实习经历项目经历,要是有心思考证就考一考,然后把别人的项目爬到自己github上,包装到简历里,什么三个月?一个月!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务