使用java语言编写程序,统计从控制台输入的一行字符串中数字个数、字母个数和其他字符个数,并打印输出。

如题所述

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
String intpatten="[0-9]";
String charpatten="[a-zA-Z]";
String signalpatten="\\W";
int intflag=0;
int charflag=0;
int signalflag=0;
String str=sc.next();
String[] strs = new String[str.length()];
for(int i=0;i<str.length();i++) {
strs[i]=str.substring(i,i+1);
if(strs[i].matches(intpatten))
intflag++;
else if(strs[i].matches(charpatten))
charflag++;
else
signalflag++;
}
System.out.println("字符个数:"+charflag+" 数字个数"+intflag+" 非字符数:"+signalflag);

}
正则表达式做 看不懂追问
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-28
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
String intpatten="[0-9]";
String charpatten="[a-zA-Z]";
String signalpatten="\\W";
int intflag=0;
int charflag=0;
int signalflag=0;
String str=sc.next();
String[] strs = new String[str.length()];
for(int i=0;i<str.length();i++) {
strs[i]=str.substring(i,i+1);
if(strs[i].matches(intpatten))
intflag++;
else if(strs[i].matches(charpatten))
charflag++;
else
signalflag++;
}
System.out.println("字符个数:"+charflag+" 数字个数"+intflag+" 非字符数:"+signalflag);

}本回答被提问者采纳
第2个回答  2012-11-28
输入的String .length 就是个数。字母和数字的区分在计算机中是有数字代表的。判读在不在这个范围内就行了。然后再取个数

Java编程统计用户从键盘输入的字符串中所包含的字母,数字和其他字符的个...
import java.util.Scanner;\/** * 统计字符串中数字,字母,空格,其他字符的个数 * @author Administrator * *\/public class Data01 {public static void main(String[] args) {int englishCount = 0;\/\/ 英文字母个数int spaceCount = 0;\/\/ 空格个数int numCount = 0;\/\/ 数字个数int otherC...

编写java程序:输入一个字符串,判断有几个英文字母,有几个数字,有几个...
public static void main(String args[]){ String str1="abfdTE1879!!";\/\/可以从控制台输入 String str2=str1.replaceAll("[a-z|A-Z]","");System.out.println("英文字符的个数为"+(str1.length()-str2.length()));str1=str2;str2=str1.replaceAll("[0-9]","");System.out.pr...

java编写一程序,分别计算所输入的字符串中空格,换行符的个数。
import java.util.Scanner;public class F { public static void main(String[] args) { \/\/空格数 int space = 0;\/\/换行数 int line = 0;Scanner s = new Scanner(System.in);String str = "-1";while (!"t".equalsIgnoreCase(str)) { str = s.nextLine();line++;char[] ch = st...

Java:从控制台输入一行字符串(用nextline方法)各单词之间分隔符有空格有...
import java.util.Scanner;public class test{ public static void main(String[] args) { Scanner scanner = new Scanner(System.in);int count = 0;if(scanner.hasNext()){ String[] ss = scanner.nextLine().split("\\\\W+");for(String s: ss){ count++;System.out.println(s);} } S...

怎么在java的代码中实现控制台输出的每行数字的个数?例如每行规定输出5...
一般是这样,比如25个数,用一个新变量i在每次System.out.println()后面去check一次,if(i==4) i=0;else i++;可以选择重写println,或者在每个print后面都加一个check没有别的方法,因为它并不规定每行放多少个字,写满为止。

编写java程序,从控制台输入10个整数,计算出输入数字之和,并打印输出统...
java程序如下:(java文件名要和类名一致)import java.util.Scanner;class compute{ public static void main(String[] args) { Scanner input=new Scanner(System.in);\/\/ 回车键输入下一个数字 int sum=0;for(int i=0;i<10;++i){ int num=input.nextInt();sum+=num;} System.out.printf...

(1)编写一个程序将控制台输入的字符串中的所有数字去掉再输出,如:
import java.io.*;public class Test { public static void main(String[] args) throws Exception { String usage="请输入任意字符以回车结束\\n本程式将给你剔除掉输入中的全部数字:";System.out.println(usage);\/\/为了兼容JDK1.5以前的版本,这里采用BufferedReader对象来读取数据,而不用SCANNER对象...

python,编写程序,统计大小写字母,数字及其他字符的数量,并以字典形式...
x=x.lower()#大小写转换 num=[]dic={} for i in x:if i.isdigit():#判断如果为数字,请将a字符串的数字取出,并输出一个新的字符串 num.append(i)else:#2请统计a字符串出现每个字母的出现次数(忽视大小写),并输出一个字典。例:{'a':3,'b':1} if i in dic:continue else:dic...

从控制台输入任意4位整数,输出该数字的各位数字之和。(java编程)
Scanner scanner = new Scanner(System.in);System.out.println("请输入一个4位自然数:");if(scanner.hasNext("[1-9]\\\\d{3}?")){ int x = Integer.parseInt(scanner.next());System.out.println(x\/1000 + (x\/100 % 10) + (x\/10 %10) + (x %10));} else { System.err....

用java从控制台输入两个字符串,
字符串数组 关于命令行

相似回答