美文网首页
剑指offer----字符串转换成一个整数

剑指offer----字符串转换成一个整数

作者: qming_c | 来源:发表于2018-02-03 19:28 被阅读0次

    题目:将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0

    输入描述:
    输入一个字符串,包括数字字母符号,可以为空
    输出描述:
    如果是合法的数值表达则返回该数字,否则返回0
    示例1

    输入
    +2147483647
        1a33
    输出
    2147483647
        0
    

    代码:

    public class Solution {
        public int StrToInt(String str) {
            if(str == null || str.length() == 0){
                return 0;
            }
            char[] chars = str.toCharArray();
            boolean hasSymbol = false;
            int sum = 0;
            if(chars[0] == '-' || chars[0] == '+'){
                hasSymbol = true;
            }
            for(int i = (hasSymbol ?  1 : 0) ; i < chars.length; i++){
                if((chars[i] >= 48) && (chars[i] <= 57)){
                    sum = sum * 10 + (chars[i] - 48);
                }else{
                    return 0;
                }
            }
            return hasSymbol ? (chars[0] == '-' ? -sum : sum) : sum;
        }
    }
    

    很简单,注意点细节就好了,不多说。

    相关文章

      网友评论

          本文标题:剑指offer----字符串转换成一个整数

          本文链接:https://www.haomeiwen.com/subject/xstpzxtx.html