题解 | #把字符串转换成整数(atoi)#

把字符串转换成整数(atoi)

http://www.nowcoder.com/practice/d11471c3bf2d40f38b66bb12785df47f



public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @return int整型
     */
    public int StrToInt (String s) {
        // write code here
        if(s == null ){
            return 0;
        }
        s = s.trim();
        if(s.length() == 0){
            return 0;
        }
        int i = 0;
        if(s.charAt(i) == '-' || s.charAt(i) == '+'){
            boolean flag = false;
            if(s.charAt(i) == '-'){
                flag = true;
            }
            i++;
            if(i == s.length()){
                return 0 ;
            }
            if(s.charAt(i) >= '0' && s.charAt(i) <= '9'){
                long sum = 0;
                int j = i;
                while(j < s.length() && s.charAt(j) >= '0' && s.charAt(j) <= '9'){
                    sum  = sum * 10 + (s.charAt(j) - '0');
                    if(flag){
                        long x = -1 * sum;
                        if(x < Integer.MIN_VALUE){
                            return Integer.MIN_VALUE;
                        }
                    }else{
                        if(sum >Integer.MAX_VALUE){
                            return Integer.MAX_VALUE;
                        }
                    }
                    j++;
                }
                return flag ? -1 * (int)sum :(int)sum;
            }
            
        }else if(s.charAt(i) >= '0' && s.charAt(i) <= '9'){
                long sum = 0;
                int j = i;
                while(j <s.length() && s.charAt(j) >= '0' && s.charAt(j) <= '9'){
                    sum = sum*10 +  (s.charAt(j) - '0');
                    if(sum > Integer.MAX_VALUE){
                        return Integer.MAX_VALUE;
                    }
                    j++;
                }
                return (int)sum;
            }
        return 0;
    }
}
全部评论

相关推荐

28小凳也想实习:项目不用一个业务一个轮子吗,刷牛客好多人说要一业务一轮子
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客企业服务