题解 | #统计字符#

统计字符

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

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        String s=in.nextLine();
        int count1=0,count2=0,count3=0,count4=0;
        for(int i=0;i<s.length();i++){
            switch(whitch(s.charAt(i))) {
                case 1: count1++;break;
                case 2: count2++;break;
                case 3: count3++;break;
                case 4: count4++;break;
            }
        }
        System.out.println(count1);
        System.out.println(count2);
        System.out.println(count3);
        System.out.println(count4);
    }
    public static int whitch(char c){
        Pattern p1=Pattern.compile("[A-Za-z]");
        Matcher m1=p1.matcher(String.valueOf(c));

        Pattern p2=Pattern.compile(" ");
        Matcher m2=p2.matcher(String.valueOf(c));

        Pattern p3=Pattern.compile("[0-9]");
        Matcher m3=p3.matcher(String.valueOf(c));

        if(m1.matches()){
            return 1;//英文字符
        }
        else if(m2.matches()){
            return 2;
        }
        else if(m3.matches()){
            return 3;
        }
        else return 4;
        
    }
}

全部评论

相关推荐

09-25 10:34
东北大学 Java
多面手的小八想要自然醒:所以读这么多年到头来成为时代车轮底下的一粒尘
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务