笔记:从“字母+数字”类型的字符串中求出数字段的个数。
2011-11-03 23:33
295 查看
法I: 较繁琐,但思路很简单。可直接看法II
//求“字母+数字”类型的字符串中数字段的个数
public class Task2_1 {
public static void main(String args[]){
// String s=args[0]; //键盘接收
String s = "cat234dog456nice56tt2011";
int count = 0; //用于存放数字段的个数
char[] Arr = s.toCharArray(); //将字符串转变成字符数组
int numtemp = 0; //用于存放相邻数字的个数
for(int i = 0 ; i < Arr.length ; i++){ //开始遍历字符串
if(Arr[i] >='0'&&Arr[i] <='9'){
numtemp++;
continue; //调出本次循环,避免下面的count重复累加
}
if(numtemp > 0){ //numtemp大于0则说明有数字出现
count++;
numtemp=0;
}
}
if(Arr[Arr.length-1]>='0'&&Arr[Arr.length-1]<='9') { //判断数字段在字符串末尾的情况
count++;
}
System.out.println("字符串“"+s+"”中有"+count+"个数字段。");
//下面的代码试图拆出字符串中包含的数字部分。
System.out.print("这"+count+"个数字段是:");
for(int i=0;i<Arr.length;i++)
{
if(!Character.isDigit(Arr[i]))
{
Arr[i]=' '; //将字符串中所有的字母用空格替换掉
}
}
String str1 = new String(Arr); //将新生成的字符串赋给str1
String []num = str1.trim().split(" ");//用split()方法削去字符串两边的空格
for(String t:num) //foreach()方法分别打印数字
{
if(!"".equals(t.trim()))
{
System.out.print(t+" ");
}
}
}
}
法II:
//获取数字串的第二种方案 //利用substring()方法直接截取出数字段 public class Task2_2 { public static void main(String[] args) { String s = "cat234dog456nice56tt2011"; int count = 0; //存储数字段的个数 int nTmp=0; //用以记录连续数字的位数 char Arr[] = s.toCharArray(); System.out.print("字符串“"+s+"”的数字部分为:"); for(int i = 0; i < Arr.length; i++) { nTmp = 0; while(i + nTmp < Arr.length //截区出连续的数字 && Arr[i + nTmp] >= '0' && Arr[i + nTmp] <= '9') {nTmp++;} if(nTmp > 0) { count++; System.out.print(s.substring(i, i + nTmp) + " "); //i+nTmp为截止位 i += nTmp; //i跳格到数字段的下一字母处 } } System.out.print(",\n所以它有"+count+"个数字段。"); } }
相关文章推荐
- 数字,字母的加密,整型,字符型,字符串类型的相互转化问题
- C#学习笔记--引用类型分类,对象类型、字符串类型、数字类型,类型转换
- 【Java】三种方式实现统计字符串中字母,数字,空格和其它类型的数量
- Mysql中对字符串类型的字段进行数字值排序
- python小练习1:给一个字符串,统计其中的数字、字母和其他类型字符的个数
- 求一个字符串中的的字母,数字,空格以及其他类型的数目。
- 中谷教育Python05笔记——数据类型、数字、字符串
- Python笔记(一) 数字、动态类型、字符串
- MyBaits中枚举类型——在数据库字段类型为字符串、数字等非枚举类型情况下的使用
- (php的弱类型导致的小问题)某变量可能是数字或非数字(对象、字符串、json等)时,应该如何去判断
- MSSQL截取字符串中字母,数字及特定数字
- js正则校验数字和字母字符串
- 判断C#中的字符串是否是数字,如果是转换成int类型
- Delphi判断字符串是否是数字、字母、大小写字母
- java中如何判断一个字符串中含有字母或数字
- String 截字符串,分割字母或者数字
- (字符串)统计字母和数字个数,打印柱状图
- redis源码分析笔记2- redis的数据类型-动态字符串sds
- Java生成指定长度并且包含大小写字母数字字符串示例
- 一个字符串在其中的数字和字母之间插入空格