1. 题目描述
+2147483647
1a33
2147483647
0
2. 解题思路
(1)今晚太累了,不太想动脑了,就看了一下别人的思路:若为负数,则输出负数,字符0对应48,9对应57,不在范围内则返回false。
(2)…
- 代码实现
(1)
public class Solution {
public int StrToInt(String str){
if (str == null || str.length() == 0)
return 0;
int mark = 0;
int number = 0;
char[] chars = str.toCharArray();
if (chars[0] == '-')
mark = 1;
for (int i = mark; i < chars.length; i++){
if(chars[i] == '+'){
continue;
}
if(chars[i] < 48 || chars[i] > 57){
return 0;
}
number = number * 10 + chars[i] - 48;
}
return mark == 0 ? number : -number;
}
}
(2)
…