剑指offer--字符串转换成整数(Java)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_40244153/article/details/87461725

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

知识点:Integer.valueOf(string)的作用:将一个字符串转换成一个整数,但是string不符合数字要求时返回0

特殊情况考虑:正负号的考虑

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

猜你喜欢

转载自blog.csdn.net/weixin_40244153/article/details/87461725