题目:

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

思路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
*/
} }

SummerVocation_Learning--java的String类运用的更多相关文章

  1. Java中String类的方法及说明

    String : 字符串类型 一.      String sc_sub = new String(c,3,2);    //      String sb_copy = new String(sb) ...

  2. java.lang.String 类的所有方法

    java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...

  3. java中String类学习

    java中String类的相关操作如下: (1)初始化:例如,String s = “abc”; (2)length:返回字符串的长度. (3)charAT:字符操作,按照索引值获得字符串中的指定字符 ...

  4. 深入分析Java的String类的方法与特点

    字符串是任何编程语言都必须支持的变量类型,有些编程语言是直接提供了原生的变量类型,有些编程语言则使用语法特性以 SDK 的形式提供支持.在Java编程平台中,对字符串的支持使用了后者的形式,就是通过在 ...

  5. java 中String类的常用方法总结,带你玩转String类。

    String类: String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.String类对象创建后不能修改,StringBuffer & St ...

  6. 在java中String类为什么要设计成final

    在java中String类为什么要设计成final? - 胖胖的回答 - 知乎 https://www.zhihu.com/question/31345592/answer/114126087

  7. java中String类为什么不可变?

    在面试中经常遇到这样的问题:1.什么是不可变对象.不可变对象有什么好处.在什么情景下使用它,或者更具体一点,java的String类为什么要设置成不可变类型? 1.不可变对象,顾名思义就是创建后的对象 ...

  8. JAVA的String类的常用方法(转载)

    Java-String类的常用方法总结   一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的f ...

  9. 【转载】Java中String类的方法及说明

    转载自:http://www.cnblogs.com/YSO1983/archive/2009/12/07/1618564.html String : 字符串类型 一.      String sc_ ...

  10. 在java中String类为什么要设计成final?

    大神链接:在java中String类为什么要设计成final? - 程序员 - 知乎 我进行了重新排版,并且更换了其中的一个例子,让我们更好理解. String很多实用的特性,比如说“不可变性”,是工 ...

随机推荐

  1. emmet缩写大全

    Syntax   Child: > nav>ul>li <nav> <ul> <li></li> </ul> </n ...

  2. 怎么在Vue中使用Base64格式的背景

    问题发生于一次mock数据,生成了base64格式的东西,因为编码包在一个变量中,不知道怎么直接在 :style 中引入. 解答1:格式background-image: url(此处是我们mock生 ...

  3. Luogu P4901 排队 fib数列+树状数组+倍增

    这题让我升华..还好只重构了一遍 首先我们发现:$n$较小时,整个队伍的形态 跟 $n$ 比较大时的局部是一样的 所以我们预处理出这个队伍的形态,和每一行每个位置的质因子个数的前缀和,$O(nlogn ...

  4. BZOJ 1500 [NOI2005]维修数列 FHQ Treap

    终于A了这题...这题还是很好...但是我太菜...重构了三遍qwq FHQ Treap大法好!qwq...~~ Ins:直接拿输入造一棵树,把原来的树split成[1,pos],[pos+1,n], ...

  5. java对象在内存中的分配

    java对象在内存中的分配 http://blog.csdn.net/qq_30753945/article/details/54974899

  6. css 设置table样式

    <style type="text/css" >      table tr td{height:39px; font-size: 13px; line-height: ...

  7. 机器学习框架ML.NET学习笔记【1】基本概念与系列文章目录

    一.序言 微软的机器学习框架于2018年5月出了0.1版本,2019年5月发布1.0版本.期间各版本之间差异(包括命名空间.方法等)还是比较大的,随着1.0版发布,应该是趋于稳定了.之前在园子里也看到 ...

  8. 织梦通过 phpmyadmin 导出的数据,再次导入的时候报错

    错误提示: #1291 – Column 'nature' has duplicated value '婆婆妈妈' in SET SQL 查询: -- -- 导出表中的数据 `dede_member_ ...

  9. easyui datagrid关于分页的问题

    easyui框架中datagrid可以很好的来展示大量的列表数组,但是由于datagrid一般都是从控件本身传递一个页码给后台,后台进行处理. 但是,最近项目跟webgis有关,数据查询直接是从服务中 ...

  10. electron 开发记录

    判断是否开发环境 安装 electron-is-dev npm install electron-is-dev // main.js const isDev = require('electron-i ...