题目
代码
class Solution {
public int myAtoi(String str) {
if (str == null) return 0;
String s = str.trim();
if ("".equals(s)) return 0;
char[] arr = s.toCharArray();
if ((arr[0] >= 'a' && arr[0] <= 'z') || arr[0] >='A' && arr[0] <= 'Z') return 0;
if (arr.length == 1 && (arr[0] == '+' || arr[0] == '-')) return 0;
long ret = 0;
int i = (arr[0] == '+' || arr[0] == '-')?1:0;
while (arr[i] >= '0' && arr[i] <= '9')
{
ret = ret * 10 + (arr[i]-'0');
i++;
if (i == arr.length || ret >= Integer.MAX_VALUE) break;
}
if (arr[0] == '-') ret = (-1)*ret;
if (ret > Integer.MAX_VALUE) return Integer.MAX_VALUE;
else if (ret < Integer.MIN_VALUE) return Integer.MIN_VALUE;
else return (int)ret;
}
}
提交结果