java怎样实别一串字符中有多少个数字多少个大小写字母

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java怎样实别一串字符中有多少个数字多少个大小写字母相关的知识,希望对你有一定的参考价值。

如下代码提供了三种方式统计一个字符串中出现的大小写字母和其他字符:

class Test

       publicstatic void main(String[] args)
       
              String str = "abAM1,!23";
              int cntU = 0; //大写字母的个数
              int cntL = 0; //小写字母的个数
              int cntOther = 0;
              int i;
             
             
              //第二种方法
              String s1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
              String s2 ="abcdefghijklmnopqrstuvwxyz";
              for (i=0; i<str.length(); ++i)
              
                     charch = str.charAt(i);
 
                     if(-1 != (s1.indexOf(ch)))
                     
                            cntU++;
                     
                     elseif (-1 != s2.indexOf(ch))
                     
                            cntL++;
                     
                     else
                     
                            cntOther++;
                     
              
 
             
//            //方法二
//            for (i=0; i<str.length(); ++i)
//            
//                   charch = str.charAt(i);
//                   if(Character.isUpperCase(ch))
//                          cntU++;
//                   elseif (Character.isLowerCase(ch))
//                          cntL++;
//                   else
//                          cntOther++;
//            
             
             
              //方法三
//            for (i=0; i<str.length(); ++i)
//            
//                   charch = str.charAt(i);
//                   if(ch>=\'a\' && ch<=\'z\')
//                          cntL++;
//                   
//                   elseif (ch>=\'A\' && ch<=\'Z\')
//                          cntU++;
//                   
//                   else
//                          cntOther++;
//                   
//            
 
 
              System.out.printf("大写字母个数: %d\\n", cntU);
              System.out.printf("小写字母个数: %d\\n", cntL);
              System.out.printf("非字母个数: %d\\n", cntOther);                 
       
参考技术A public static void main(String[] args)
String a = "190AZaz";
int countNum = 0;
int countA = 0;
int counta = 0;
for(int i = 0;i < a.length();i++)
if((byte)a.charAt(i)>47 && (byte)a.charAt(i)<58)
countNum++;
else if((byte)a.charAt(i)>64 && (byte)a.charAt(i)<91)
countA++;
else if((byte)a.charAt(i)>96 && (byte)a.charAt(i)<123)
counta++;


System.out.println("数字有"+countNum+"个,大写字母有"+countA+"个,小写字母有"+counta+"个");

运行结果:
数字有3个,大写字母有2个,小写字母有2个追问

"charAt"这有什么用呢 是不是把它转换成数字啊 你们有没有java帮助啊 我下过 结果都是错了 帮帮我嘛 谢谢了

本回答被提问者采纳
参考技术B public class Du

public static void main(String[] args)

String str = "asdfasfs3242sdadfasd";

int carcCount = 0;//保存字符
int digitCount = 0;//保存大小写字母数量

for(int i = 0; i < str.length(); i++)
if(String.valueOf(str.charAt(i)).matches("[0-9]"))
digitCount++;
else if(String.valueOf(str.charAt(i)).matches("[a-zA-Z]"))
carcCount++;




参考技术C 要是我,我就用正则替换所有非数字非大小写字母然后length一下,呵呵追问

它是输入进来了 怎么知道那些是非数字非大小写字母呢????????????

参考技术D 把字符串每一个字符转成CHAR型,再循环比较这个字符是什么。(字符是由ASCII码来的比如‘A’就是65)
//输入字符
String ts = "1235AbCd";
//计数器(数字个数)
int isNum=0;
//计算器(字母个数)
int alf= 0;
for(int i=1; i=ts.lenth; i++)

char cs = ts.subString(i,1).toChar();
if(cs >=0 || cs <9)
isNum++;
if(cs >=65 || cs <=93)
alf++;

比较好了再往自己定义的变量里加
手边没有工具,大致写写。这个小练习以前写过。具体算法是这样,但没有什么实际意义。

以上是关于java怎样实别一串字符中有多少个数字多少个大小写字母的主要内容,如果未能解决你的问题,请参考以下文章

java编程 字母数和单词数问题

输入一串只含有中文英文和数字的字符串,统计其中中文字符英文字符和数字字符各有多少个?

怎样在c语言中输入不少于10个数字的数组,急求

Java字符串中有多少个字符多少个char字节

如何检查Java中的句子中有多少个辅音和元音?

Java中文字符所占的字节数是多少?