把字符串转换成整数_JAVA_较难
把字符串转换成整数
http://www.nowcoder.com/questionTerminal/1277c681251b4372bdef344468e4f26e
- 先处理空
- 再处理正负号
- 再处理首位为0值
- 最后进行数值处理
public class Solution { public int StrToInt(String str) { int num = 0, flag = 1; // 处理空 if(str == null || str.isEmpty()) { return 0; } // 处理符号 if(str.charAt(0) == '-') { flag = -1; str = str.substring(1,str.length()); } else if(str.charAt(0) == '+'){ str = str.substring(1,str.length()); } // 处理空 if(str == null || str.isEmpty()) { return 0; } // 处理第一位0 if(str.charAt(0) == '0') { return 0; } // 累计 for(char c : str.toCharArray()) { if(c < '0' || c > '9') { return 0; } else { num = (c - '0') + num * 10; } } return flag * num; } }