java中如何判断一个字符串中含有字母或数字

我要做一道题让我检索字符串s 如果数字字符串则转换成数字,如果含有字线就输入异常,那位大哥会帮帮我,最好是有文字说明的或注释的

举个小例子:
public static void main(String[] args){
boolean isDigit = false;//定义一个boolean值,用来表示是否包含数字
boolean isLetter = false;//定义一个boolean值,用来表示是否包含字母
String str = "aaasss8fff"; //假设有一个字符串
for(int i=0 ; i<str.length() ; i++){ //循环遍历字符串
if(Character.isDigit(str.charAt(i))){ //用char包装类中的判断数字的方法判断每一个字符
isDigit = true;
}
if(Character.isLetter(str.charAt(i))){ //用char包装类中的判断字母的方法判断每一个字符
isLetter = true;
}
}

/*循环完毕以后
*如果isDigit为true,则代表字符串中包含数字,否则不包含
*如果isLetter为true,则代表字符串中包含字母,否则不包含
*/

System.out.println(isDigit);
System.out.println(isLetter);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-01
比如:
public static void main(String args[]) {
boolean isNumber=false; //定义一个boolean值,用来表示是否包含数字
String str="aaasss8fff"; //假设有一个字符串
for(int i=0;i<str.length();i++){ //循环遍历字符串
if(Character.isDigit(str.charAt(i))){ //用char包装类中的判断数字的方法判断每一个字符
isNumber=true;
}
}
/*
* 循环完毕以后,如果isNumber为true,则代表字符串中包含数字,否则不包含
*/
}
第2个回答  2013-04-01
比如:
public static void main(String args[]) {
boolean isNumber=false; //定义一个boolean值,用来表示是否包含数字
String str="aaasss8fff"; //假设有一个字符串
for(int i=0;i<str.length();i++){ //循环遍历字符串
if(Character.isDigit(str.charAt(i))){ //用char包装类中的判断数字的方法判断每一个字符
isNumber=true;
}
}
/*
* 循环完毕以后,如果isNumber为true,则代表字符串中包含数字,否则不包含
*/
}
第3个回答  2013-03-31
用正则表达式吧~String.matches("[0-9]+");
判断字符串是否全为数字,[0-9]表示集合,+表示该集合的内容可以重复出现。
第4个回答  2013-04-01
.1 2 楼想复杂了..
直接用 Integer.parseInt就行了 不能转的话就会自己抛出NumberFormatException
相似回答