8. 字符串转换整数 (atoi)
8. String to Integer (atoi)

题目描述

LeetCode

LeetCode8. String to Integer (atoi)中等

Java 实现

class Solution {
    public int myAtoi(String str) {
        if (str == null || str.trim().length() == 0) {
            return 0;
        }
        str = str.trim();
        char firstChar = str.charAt(0);
        int sign = 1, start = 0, len = str.length();
        long sum = 0;
        if (firstChar == '+') {
            sign = 1;
            start++;
        } else if (firstChar == '-') {
            sign = -1;
            start++;
        }
        for (int i = start; i < len; i++) {
            if (!Character.isDigit(str.charAt(i))) {
                return (int) sum * sign;
            }
            sum = sum * 10 + str.charAt(i) - '0';
            if (sign == 1 && sum > Integer.MAX_VALUE) {
                return Integer.MAX_VALUE;
            }
            if (sign == -1 && sign * sum < Integer.MIN_VALUE) {
                return Integer.MIN_VALUE;
            }
        }
        return (int) sum * sign;
    }
}

相似题目

参考资料

相关文章:

  • 2022-12-23
  • 2021-11-17
  • 2021-07-21
  • 2021-06-29
  • 2022-01-27
  • 2022-03-05
  • 2022-02-04
  • 2021-10-30
猜你喜欢
  • 2021-08-28
  • 2022-01-27
  • 2022-12-23
  • 2021-11-26
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案