100.将字符串转化为整数

题目描述

实现函数 atoi 。函数的功能为将字符串转化为整数

提示:仔细思考所有可能的输入情况。这个问题没有给出输入的限制,你需要自己考虑所有可能的情况。

示例1

输入

"123"

返回值

123

代码实现

import java.util.*;


public class Solution {
    /**
     * 
     * @param str string字符串 
     * @return int整型
     */
    public int atoi (String str) {
        if (str == null && str.equals("")) {
            return 0;
        }
        boolean flag = true;
        str = str.trim();
        char[] arr = str.toCharArray();
        long result = 0;
        for (char num : arr) {
            if (num == '+') {
                continue;
            } else if (num == '-') {
                flag = false;
                continue;
            } else if (result == 0 && num == '0') {
                continue;
            } else if (num < '0' || num > '9') {
                break;
            }
            result = result * 10 + (num - '0');
        }
        if (!flag) {
            result *= -1;
        }
        if (result >= Integer.MAX_VALUE) {
            return Integer.MAX_VALUE;
        } else if (result <= Integer.MIN_VALUE) {
            return Integer.MIN_VALUE;
        }
        return (int)result;
    }
}

猜你喜欢

转载自blog.csdn.net/xiao__jia__jia/article/details/113531699