面试时面试官提了一个问题,不调用类似于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"));
}