Java中统计字符串中大写、小写字母以及非英文字母数的三种方法

本文介绍了三种不同的方法来统计给定字符串中的大写字母、小写字母以及其他非字母字符的数量。这些方法包括直接字符比较、字符串查找以及使用Java内置方法进行判断。
方法一:
  从字符串中分离出字符,依次将每一个字符与'a','z'比较,判断是否为小写字母,与'A','Z'比较,判断是否为大写字母,其他的为非英文字母。
方法二:
  从字符串中分离出字符,依次将每一个字符在'a'~'z'中查找,如果查到则为小写字母,同样方法判断是否为大写字母,其他的为非英文字母。
方法三:

  从字符串中分离出字符,依次将每一个字符用Character.isLowerCase()方法判断是否为小写字母,Character.isUpperCase()判断是否为大写字母,其他的为非英文字母。

    public static void numChar1(String s) {
        int cU = 0 ;
        int cL = 0 ;
        int cN = 0 ;
        char c ;
        for(int i=0 ;i<s.length() ;i++) {
            c = s.charAt(i) ;
            if(c > 'a' && c < 'z') {
                cL ++ ;
            }
            else if(c > 'A' && c < 'Z') {
                cU ++ ;
            }
            else {
                cN ++ ;
            }
        }
        System.out.println("Number of LowerCase:" + cL) ;
        System.out.println("Number of UpperCase:" + cU) ;
        System.out.println("Number of NotChar:" + cN) ;
    }

    public static void numChar2(String s) {
        String sL = "abcdefghijklmnopqrstuvwxyz" ;
        String sU = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" ;
        int cU = 0 ;
        int cL = 0 ;
        int cN = 0 ;
        char c ;
        for(int i=0 ; i<s.length() ;i++) {
            c = s.charAt(i) ;
            if(sL.indexOf(c) != -1) {
                cL ++ ;
            }
            else if(sU.indexOf(c) != -1) {
                cU ++ ;
            }
            else {
                cN ++ ;
            }
        }
        System.out.println("Number of LowerCase:" + cL) ;
        System.out.println("Number of UpperCase:" + cU) ;
        System.out.println("Number of NotChar:" + cN) ;
    }

    public static void numChar3(String s) {
        int cU = 0 ;
        int cL = 0 ;
        int cN = 0 ;
        char c ;
        for(int i=0 ;i<s.length() ;i++) {
            c = s.charAt(i) ;
            if(Character.isLowerCase(c)) {
                cL ++ ;
            }
            else if(Character.isUpperCase(c)) {
                cU ++ ;
            }
            else {
                cN ++ ;
            }
        }
        System.out.println("Number of LowerCase:" + cL) ;
        System.out.println("Number of UpperCase:" + cU) ;
        System.out.println("Number of NotChar:" + cN) ;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值