日期:2014-05-20  浏览次数:20785 次

java怎么判断一个字符串里面的某个字符是不是一个数字
假如给定一个字符串,怎么判断这个字符串里面的某个字符是不是一个数字
如:String str="danjd3t53"
其中str.charAt(5)就是数字3而不是字母

------解决方案--------------------
str.matches("[a-zA-Z]{5}\\d");
是对比danjd3
------解决方案--------------------
探讨

charAt()出来的是字符,asc表里面数字是从30 - 39的吧。 处于这个范围的就是数字啦。

------解决方案--------------------
Java code

    public static void main(String[] args) {
        System.out.println(isNumber("danjd3t53", 5));
    }

    public static boolean isNumber(String s, int p) {
        boolean flag = false;
        char c = s.charAt(p);
        if (c >= '0' && c <= '9') {
            flag = true;
        }
        return flag;
    }

------解决方案--------------------
取ASCII比较的话:是48 - 57
如果直接用字符比较也是可以的。c >= '0' && c <= '9'