把字符串转换成整数

时间:2023-01-03 19:06:41

【题目】

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

【代码】

        //把字符串转换成整数
     public int StrToInt(String str) {
            if(str==null||str.length()==0) return 0;
            char[] chs=str.toCharArray();

            int sym=(chs[0]=='-')?-1:1;
            //chs[0]='0';
            if(chs[0]=='-'||chs[0]=='+') chs[0]='0';
            int sum=0;
            for(int i=0;i<chs.length;i++){
                if(chs[i]<'0'||chs[i]>'9'){
                    sum=0;break;
                }
                sum=sum*10+chs[i]-'0';
            }
            return sym*sum;
        }