题目:

编写一个程序,输出一个字符串中的大写字母数,小写字母数,及其它字母数。

思路1:

可以先遍历整个字符串,在判断每个字符的类型。

 public class TestString {

     public static void main(String[] args) {
String s = "abcDFEGHadga@#%@454sfgha";
int ucount=0,lcount=0,ocount=0;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) >= 'a' && s.charAt(i) <= 'z') {
lcount++;
}
else if (s.charAt(i) >= 'A' && s.charAt(i) <= 'Z') {
ucount++;
}
else {
ocount++;
}
}
System.out.println("大写字母数:"+ucount+"\n"+"小写字母数:"+lcount);
System.out.println("其它字符数:"+ocount);
/*
* 大写字母数:5
* 小写字母数:12
* 其他字母数:7
*/
} }

  

 思路2:

 可以先定义好一个包含所有大写字母的字符串和一个包含所有小写字母的字符串,在进行判断。

 public class TestString {

     public static void main(String[] args) {
String s = "abcDFEGHadga@#%@454sfgha";
int ucount=0,lcount=0,ocount=0;
String sL = "abcdefghijklmnopqrstuvwxyz";
String sU = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char c;
for (int i = 0; i < s.length(); i++) {
c = s.charAt(i);
if (sL.indexOf(c) != -1) {
lcount++;
}
else if (sU.indexOf(c) != -1) {
ucount++;
}
else {
ocount++;
}
}
System.out.println("大写字母数:"+ucount+"\n"+"小写字母数:"+lcount);
System.out.println("其它字符数:"+ocount);
/*
* 大写字母数:5
* 小写字母数:12
* 其他字母数:7
*/
} }

另外在判断一个字母是小写字母还是大写字母的时候,可以用Character类里面的isLowerCase(char ch)和is UpperCase(ch).

如: 程序1可改为:

 public class TestString {

     public static void main(String[] args) {
String s = "abcDFEGHadga@#%@454sfgha";
int ucount=0,lcount=0,ocount=0;
char c;
for (int i = 0; i < s.length(); i++) {
c = s.charAt(i);
if (Character.isLowerCase(c)) {
lcount++;
}
else if (Character.isUpperCase(c)) {
ucount++;
}
else {
ocount++;
}
}
System.out.println("大写字母数:"+ucount+"\n"+"小写字母数:"+lcount);
System.out.println("其它字符数:"+ocount);
/*
* 大写字母数:5
* 小写字母数:12
* 其他字母数:7
*/
} }

最新文章

  1. 调优SQL思路
  2. CentOS7安装Nginx并部署
  3. google的glog的用法:
  4. core java 5~6(OOP &amp; 高级语言特征)
  5. Difference between ref and out parameters
  6. Ubuntu 修改时间
  7. 【UVALive - 3487】 Duopoly(网络流-最小割)
  8. MLlib-协同过滤
  9. 建立一个ROS msg and srv
  10. Spring中ApplicationContext加载机制
  11. 用vue开发一个app(1,基础环境配置)
  12. js实现前端下载文件
  13. 关于Oracle开启自动收集统计信息的SPA测试
  14. 更优雅的方式: JavaScript 中顺序执行异步函数
  15. 自己写一个网页版的Markdown实时编辑器
  16. 学习笔记—HTML基础标签
  17. ssh连接服务器失败解决记录
  18. C++虚表详解
  19. MySQL--批量插入导致自增跳号问题
  20. 基于NodeJS的14款Web框架

热门文章

  1. 2、kvm基础常用命令操作
  2. Linux系统下强制其他用户下线
  3. spring boot与 spring.factories
  4. 练习十八:求这样的一组数据和,s=a+aa+aaa+aaaa+aa...a,其中a为一个数字
  5. testlink迁移
  6. spring学习(四)spring的jdbcTemplate(增删改查封装)
  7. Unity SceneManager 对场景的操作
  8. Java安装JDBC驱动教程(SQL Server系列)
  9. Cucumber 步骤中传Data Table作为参数
  10. setInterval 函数