您的位置:首页 > Web前端

剑指offer — 字符串转换为整数

2017-12-14 08:19 274 查看
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0

解题思路:这个题目虽然简单,但是要考虑各种edge case,十分考验代码的基本功

java

public class Solution {
public int StrToInt(String str) {
if (str == null || str.length() == 0) {
return 0;
}
boolean flag = true;
int count = 0;
while (count < str.length() && (str.charAt(count) == '-' || str.charAt(count) == '+')) {
if (str.charAt(count) == '-') {
flag = !flag;
}
count++;
}
long sum = 0;
for (int i = count; i < str.length(); i++) {
if (Character.isDigit(str.charAt(i))) {
sum = sum * 10 + str.charAt(i) - '0';
} else {
return 0;
}
}
return flag ? (int)sum : (int)-sum;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: