黑马程序员技术交流社区
标题:
关于统计大写字母和小写字母的问题?
[打印本页]
作者:
simonqian
时间:
2013-5-12 10:48
标题:
关于统计大写字母和小写字母的问题?
本帖最后由 simonqian 于 2013-5-13 08:33 编辑
从键盘输入一行字符,分别统计其中大写字母和小写字母的个数?
作者:
hou604720966
时间:
2013-5-12 10:56
通过ASCII码统计,在此这给你思路;
大写A到Z 对应的ASCII码为65到90
小写a到z 对应的ASCII码为97到122
作者:
刘兆华
时间:
2013-5-12 11:05
String 类下没有这种情况的方法处理。唯一一种能区分大小写的方法也就只能用ASCII表 只有表中的的大小写字母能区分开,用条件式判断字母处于哪个范围。正如楼上说的 A到Z 的范围对应一个数字范围。 a-z又是一个范围。判断字母处于这两个范围中的哪个 就行。
作者:
白磊
时间:
2013-5-12 11:24
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in); //从键盘输入
String str=sc.next();
int da = 0;
int xiao = 0;
for(int i=0;i<str.length();i++){
if('a'<str.charAt(i)&&str.charAt(i)<'z'){ //判断字母的小写
xiao++;
}
else if('A'<str.charAt(i)&&str.charAt(i)<'Z'){ //判断字母的大写
da++;
}
}
System.out.println("大写字母数为:"+da+".....");
System.out.println("小写字母数为:"+xiao);
}
}
这个是我写的,你可以看看
作者:
仲伟
时间:
2013-5-12 12:13
isUpperCase(char ch)
isLowerCase(int codePoint)
根据API文档中输入,一个字符,用chatacter做半段就行吗
作者:
chouwayメ
时间:
2013-5-12 13:51
本帖最后由 chouwayメ 于 2013-5-12 13:55 编辑
思路是:1.复制一个新的str并转成大写;
2.把两个str都变成字符数组;
3.比较每个字符,相同的countUp++,不同的countLow++;
public class countCaseTest
{
public static void main(String[]args)
{
String a="abaEdFSds";
count(a);
}
static void count(String a)
{
int countUp=0,countLow=0;
String b=a.substring(0,a.length());
b=b.toUpperCase(); //复制一个新的str并转成大写
char[] b1=b.toCharArray();
char[] a1=a.toCharArray(); //把两个str都变成字符数组
for(int i=0;i<a1.length;i++)
{
if(a1[i]==b1[i])countUp++;
else countLow++;
} //比较每个字符,相同的countUp++,不同的countLow++
System.out.println(a+" UP:"+countUp+" LOW:"+countLow);
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2