java小算法—输入一行字符 分别统计其中英文字母 空格 数字 和其他字符的个数

1.描述

输入一行字符 分别统计其中英文字母 空格 数字 和其他字符的个数 

 

 

2.代码

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        testMethod("!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****");
    }

    /**
     * 输入一行字符 分别统计其中英文字母 空格 数字 和其他字符的个数
     *
     * @param string 输入的字符
     */

    private void testMethod(String string) {
        if (TextUtils.isEmpty(string)) return;
        int count1 = 0;//英文字母个数
        int count2 = 0;//空格个数
        int count3 = 0;//数字个数
        int count4 = 0;//其他字符个数

        int length = string.length();
        for (int i = 0; i < length; i++) {
            char c = string.charAt(i);
            if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z') {//字母
                count1++;
            } else if (c == ' ') {//空格
                count2++;
            } else if (c >= '0' && c <= '9') {//数字
                count3++;
            } else {//其他字符
                count4++;
            }
        }

        Log.d("TAG", string + "中总字符个数:" + length);
        Log.d("TAG", string + "中字母个数:" + count1);
        Log.d("TAG", string + "中空格个数:" + count2);
        Log.d("TAG", string + "中数字个数:" + count3);
        Log.d("TAG", string + "中其他字符个数:" + count4);
    }
}

 

 

 

3.结果

!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****中总字符个数:65


!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****中字母个数:20


!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****中空格个数:10


!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****中数字个数:14


!!!!!123456   @@@@@L¥¥¥  anAdddFFFd &&&& 56mmm   A34ll2266LLL****中其他字符个数:21

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值