将String数字字符转为整型

面试时面试官提了一个问题,不调用类似于parseInt这样的方法,将一个整型数的str转为整型,比如“123456”转为123456,然后把代码手写出来,真是尴尬,想了大概的思路,遍历字符串,取出每位字符减去 '0' 就会得到对应的整型值,但是!!!,在纸上写时居然没有感觉,写不来!!!离开了Eclipse感觉自己就像个废柴!!!晚上回来写了一下,前后大概就5mins!!!自己还是太菜了!!!  (没有测试太多,应该没有太大的问题吧)。。。

public static int getPro(int n) {
        int pro = 1;
        if(n==0)
            return pro;
        else {
            for(int i = 0;i<n;i++) {
                pro*=10;
            }
        }
        return pro;
    }
    public static int toNum(String numStr) {
        int sum = 0;
        int len = numStr.length();
        for(int i = 0; i< len;i++) {
            int tempNum = numStr.charAt(i)-'0';  //获取每位的数字
            sum+=tempNum*getPro(len-i-1);
        }
        return sum;
    }

    public static void main(String[] args) {
        System.out.println(toNum("12304506"));
    }

猜你喜欢

转载自www.cnblogs.com/Guhongying/p/11166210.html