题目
统计字符串中字母和数字的个数
完整代码
package test
import java.util.Scanner;
public class customer1 {
public static void main(String args[]) {
System.out.println("请输入要统计的字符串");
Scanner sc=new Scanner(System.in);
String b=sc.nextLine();
int charnum=0;
int numnum=0;
int othernum=0;
for(int i=0;i<b.length();i++) {
if(b.charAt(i)>='a'&& b.charAt(i)<='z') {
charnum++;
}else if(b.charAt(i)>='0'&& b.charAt(i)<='9'){
numnum++;
}else {
othernum++;
}
}
System.out.println("字母的个数是"+charnum);
System.out.println("数字的个数是"+numnum);
System.out.println("其他字符的个数是"+othernum);
}
}
运行结果
请输入要统计的字符串
ahoem;b,ip1pem;2,3o2u;,3oi394
字母的个数是15
数字的个数是8
其他字符的个数是6
过程解析
import java.util.Scanner;
导入Java.util包 ,我们后面需要使用Scanner类,使用这个方法需要导入java.util包
System.out.println("请输入要统计的字符串");
这是一个提示语,我们下面会用Scanner输入一个字符串,所以先写这个,提示我们去输入什么内容。一般我们再写Scanner时都会用System类的一个方法去进行提示
Scanner sc=new Scanner(System.in);
创建一个Scanner类的对象,类似 peason p=new peason();这样就好理解一些了。
String b=sc.nextLine();
调用sc的nextLine()方法。sc是Scanner类的对象,可以调用Scanner的方法。
int charnum=0;
初始化字母数为0
int numnum=0;
初始化数字数为0
int othernum=0;
初始化其他字符数为0
for(int i=0;i<b.length();i++) {
for循环 每次循环后i++,i最大值小于b.length()
if(b.charAt(i)>='a'&& b.charAt(i)<='z') {
if判断,b.charAt(i)是指b这一字符串的第i个字符是什么,条件判断是该字符处于'a'到'z'
charnum++;
符合条件的话charnum加一
}else if(b.charAt(i)>='0'&& b.charAt(i)<='9'){
该字符处于'0'到'9'之间
numnum++;
符合条件的话nunnum加一
}else {
其他情况归到else中
othernum++;
othernum加一
System.out.println("字母的个数是"+charnum);
打印结果
System.out.println("数字的个数是"+numnum);
System.out.println("其他字符的个数是"+othernum);
注:如果字符为中文,则归到othernum中
结语
道路千千万,大家如果有好的解题方法的话,可以在评论区留言哦~
标签:Java,Scanner,--,个数,System,int,othernum,charAt From: https://www.cnblogs.com/iampigeon/p/17181662.html