java,编写程序,从命令行读入字符串,显示该字符串中大写字母个数

能具体写下吗

您好,提问者: 

//程序没有运行,如有错误,请自行修改
public class Print{
public static void main(String[] args){
        java.util.Scanner sc = new java.util.Scanner(System.in);
        String str = sc.next();
        char[] arr = str.toCharArray();
        int sum = 0;//统计多少个大写字母
        String result = ""; //连接大写字母
        for(int i = 0; i < arr.length; i++){
            if((int)arr[i] >= 65 && (int)arr[i] <= 90){
                sum = ++sum;
                result += arr[i];
            }
        }
        System.out.println("大写字母一共:" + sum+"---");
        System.out.println("分别为:" + result);
    }
    }
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-29
用scanner类接收控制台的输入,接收到控制台输入的内容以后,设置一个字符串变量,str=“ABCDEFGHIJKLMNOPQRSTUVWXYZ”,依次判断控制台输入的内容的没一个字符是否包含在str中,如果包含则证明是大写字母,然后提前设置好一个变量int 代表大写字母的个数,在进行比较发现包含的时候那么int就+一下。依次执行完控制台输入内容的每一个字符,最后就可以得出大写字母的个数
第2个回答  2013-12-29
System.out.println("请输入字符串:");
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
//转换为字符数组
char[] chs = str.toCharArray();
//记录个数
int num = 0;
for (char ch : chs) {
if(ch>='A'&&ch<='Z')
num++;
}
System.out.println("大写字母数: "+num);
第3个回答  2013-12-29

如图:

运行结果正确。

追问

我照着打的,怎么运行的跟你不一样 啊
我没那个什么“大写字母个数2”的显示结果啊

追答

你得输入你所要判断的字符串的呀,我输的是AbcDef这串啊~

追问

直接把那个please input the string改成字符串就行???

追答

如果你要直接在程序里面赋值字符串的话,是给String string = "(你所要判断的字符串)";

前面的从命令行读取的就不用了。

我的之前写的please input the string只是程序中输出的提醒用户输入的字符串呀,那个绿色的输入"AbcDef"才是赋值给 string的字符串。

追问

谢谢啦,大神,唉,上课不听的孩子伤不起啊!!!!!

追答

不客气,代码多看看多写写就熟练了。

相似回答