SummerVocation_Learning--java的String类运用
题目:
编写一个程序,输出一个字符串中的大写字母数,小写字母数,及其它字母数。
思路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类运用的更多相关文章
- Java中String类的方法及说明
String : 字符串类型 一. String sc_sub = new String(c,3,2); // String sb_copy = new String(sb) ...
- java.lang.String 类的所有方法
java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...
- java中String类学习
java中String类的相关操作如下: (1)初始化:例如,String s = “abc”; (2)length:返回字符串的长度. (3)charAT:字符操作,按照索引值获得字符串中的指定字符 ...
- 深入分析Java的String类的方法与特点
字符串是任何编程语言都必须支持的变量类型,有些编程语言是直接提供了原生的变量类型,有些编程语言则使用语法特性以 SDK 的形式提供支持.在Java编程平台中,对字符串的支持使用了后者的形式,就是通过在 ...
- java 中String类的常用方法总结,带你玩转String类。
String类: String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.String类对象创建后不能修改,StringBuffer & St ...
- 在java中String类为什么要设计成final
在java中String类为什么要设计成final? - 胖胖的回答 - 知乎 https://www.zhihu.com/question/31345592/answer/114126087
- java中String类为什么不可变?
在面试中经常遇到这样的问题:1.什么是不可变对象.不可变对象有什么好处.在什么情景下使用它,或者更具体一点,java的String类为什么要设置成不可变类型? 1.不可变对象,顾名思义就是创建后的对象 ...
- JAVA的String类的常用方法(转载)
Java-String类的常用方法总结 一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的f ...
- 【转载】Java中String类的方法及说明
转载自:http://www.cnblogs.com/YSO1983/archive/2009/12/07/1618564.html String : 字符串类型 一. String sc_ ...
- 在java中String类为什么要设计成final?
大神链接:在java中String类为什么要设计成final? - 程序员 - 知乎 我进行了重新排版,并且更换了其中的一个例子,让我们更好理解. String很多实用的特性,比如说“不可变性”,是工 ...
随机推荐
- POJ1151 Atlantis 线段树扫描线
扫描线终于看懂了...咕咕了快三个月$qwq$ 对于所有的横线按纵坐标排序,矩阵靠下的线权值设为$1$,靠上的线权值设为$-1$,然后执行线段树区间加减,每次的贡献就是有效宽度乘上两次计算时的纵坐标之 ...
- 使用nsenter工具进入Docker容器
查看本机装没有nsenter whereis nsenter或者whatis nsenter 未安装先安装,网上有很多这样的脚本 vi nsenter.sh #!/bin/bashcurl https ...
- jdbc取出表名 名称
package com.dataconnect.test.util; import java.sql.Connection; import java.sql.DatabaseMetaData; imp ...
- vbox 挂载共享文件时可能出现的问题以及对应的解决办法
VMBox挂载共享文件时可能出现的问题以及对应的解决办法 如果出现“未能加载虚拟光盘***.iso 到虚拟电脑的错误” : 左边一栏,右键光盘,eject,再安装
- UVALive - 4223(hdu 2926)
---恢复内容开始--- 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2962 Trucking Time Limit: 20000/10000 MS ...
- Storm概念学习系列之Tuple元组(数据载体)
不多说,直接上干货! Tuple元组 Tuple 是 Storm 的主要数据结构,并且是 Storm 中使用的最基本单元.数据模型和元组. Tuple 描述 Tuple 就是一个值列表, Tuple ...
- java CountDownLatch 等待多线程完成
CountDownLatch允许一个或多个线程等待其他线程完成操作. package com.test; import java.util.concurrent.CountDownLatch; pub ...
- Hibernate基础案例1
使用到的是MySQL数据库 1.在项目中先引入jar包,并添加引用 <dependencies> <dependency> <groupId>junit</g ...
- JSP中,EL表达式向session中取出一个attribute和JSP脚本访问session取出一个attribute,写法有何不同?(转自百度知道)
EL表达式使用起来会更简洁,假如session中有一个属性A(attrA),那么EL和jsp脚本取值的方式如下: EL表达式:${ sessionScope.attrA } JSP脚本:<%=s ...
- 用C++/CLI搭建C++和C#之间的桥梁
一.简单用法 C#和C++是非常相似的两种语言,然而我们却常常将其用于两种不同的地方,C#得益于其简洁的语法和丰富的类库,常用来构建业务系统.C++则具有底层API的访问能力和拔尖的执行效率,往往用于 ...