由于不支持正则表达式在一个方法里面接收一个String类型的串,如何去判断它是否是在0到9之间的数字,而非其他符号或者字母,不能使用正则表达式的话,我是这样做的:
if (Integer.parseInt(String.valueOf(s.charAt(k))) <= 9 && Integer.parseInt(String.valueOf(s.charAt(k))) >= 0) {
z = true;
}
我记得char和int本来存储时候都是一个类型的,这里不需要去Integer.parseInt一个String也可以直接判断char的,但是在程序里面测试了下,判断不出来;但是使用了Integer.parseInt的话,这里要是接收到的是一个字母或者符号就会出异常,请问这种情况怎么解决呢?我是菜鸟。请各位大侠帮帮忙哦~!
if (Integer.parseInt(String.valueOf(s.charAt(k))) <= 9 && Integer.parseInt(String.valueOf(s.charAt(k))) >= 0) {
z = true;
}
我记得char和int本来存储时候都是一个类型的,这里不需要去Integer.parseInt一个String也可以直接判断char的,但是在程序里面测试了下,判断不出来;但是使用了Integer.parseInt的话,这里要是接收到的是一个字母或者符号就会出异常,请问这种情况怎么解决呢?我是菜鸟。请各位大侠帮帮忙哦~!
boolean result = true;
for (int k = 0; k < str.length(); k++) {
if (48 > (int) str.charAt(k) || (int) str.charAt(k) > 53) {
result = false;
}
}
return result;
}
boolean b = false;
String str = "aa";
try{
Integer.parseInt(str);
b = true;
}catch(NumberFormatException e){
b = false;
}
给了一种比较变态的办法,好孩子一般都不这么用