从键盘输入一串字符串,编写一个java程序实现统计,输出有几个大写字母,几个小写字母,和几个数字,并把大 200

 我来答
子弹非弹子575
2017-08-17 · TA获得超过392个赞
知道小有建树答主
回答量:450
采纳率:20%
帮助的人:186万
展开全部
public static void main(String[] args) {
System.out.println("请输入一串字符串");
Scanner s=new Scanner(System.in);
String string=s.nextLine();
int numberCount=0;
int upperCaseCount=0;
int lowerCaseCount=0;
for(int i=0;i<string.length();i++){
char c=string.charAt(i);
if(Character.isDigit(c)){
//数字
numberCount=numberCount+1;
}
else if(Character.isUpperCase(c)){
//大写字母
upperCaseCount=upperCaseCount+1;
}
else if(Character.isLowerCase(c)){
//小写字母
lowerCaseCount=lowerCaseCount+1;
}

}
System.out.println("大写字母数量"+upperCaseCount);
System.out.println("小写字母数量"+lowerCaseCount);
System.out.println("数字数量"+numberCount);

}
}
zsx10110
2018-01-17 · TA获得超过8872个赞
知道大有可为答主
回答量:2369
采纳率:66%
帮助的人:3096万
展开全部
import java.io.*;import java.util.*;
public class Static{private String input;
private int bLetter =0;private int sLetter =0;private int numbers =0;private int others =0;private int spaces =0;
public Static(){   this.getString();   char[] list = charsOfString(input);
   for (int i=0;i<list.length ;i++ )   {    int flag = letterToCode(list[i]);
    if(flag>=65 && flag=97 && flag=48 && flag<=57)    {     numbers += 1;    }    else if (flag == 32)    {     spaces += 1;    }    else    {     others += 1;    }   }
   System.out.println("您输入的字符串中的大写字母有:"+bLetter);   System.out.println("您输入的字符串中的小写字母有:"+sLetter);   System.out.println("您输入的字符串中的数字有:"+numbers);   System.out.println("您输入的字符串中的空格有:"+spaces);   System.out.println("您输入的字符串中的其他字符有:"+others);
}
public static void main(String args[]){   new Static();}
/*** 该方法获取一组字符串*/public void getString(){   BufferedReader in = new BufferedReader(                   new InputStreamReader(System.in));   System.out.println("请输入一串字符串:");
   try   {    this.input = in.readLine();   }   catch (Exception e)   {    System.out.println(e);   }}    /*** 该方法返货该字符串的各个字符到一个数组里* 这里我打算用ArrayList的,但是他只能保存为Object类型* 就是不知道怎么把Object转换为char,所以,这里就用char[]*/public char[] charsOfString(String s){   char[] list = new char[s.length()];
   for (int i=0 ;i<s.length() ;i++ )   {    list[i] = s.charAt(i);   }
   return list;}    /*** 该方法获将字母转换为对应ASCII码*/public int letterToCode(char ch){   int s = ch;   return s; }}

你试试看 我也参考别人的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式