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

ac代码:

 1 public class Solution {
 2     public int StrToInt(String str) {
 3         if(str.length()==0)
 4             return 0;
 5        if(str.charAt(0)=='+')
 6          str=str.substring(1,str.length());
 7      boolean flag=false;
 8      if(str.length()!=0&&str.charAt(0)=='-'){
 9          str=str.substring(1,str.length());
10          flag=true;
11      }
12      for(int i=0;i<str.length();i++){
13          if(str.charAt(i)<'0'||str.charAt(i)>'9')
14              return 0;
15      }
16      int sum=0;
17      int x;
18      for(int i=0;i<str.length();i++){
19          x=str.charAt(i)-'0';
20          sum=sum*10+x;
21      }
22      if(flag){
23          return sum*(-1);
24      }else{
25          return sum;
26      }
27 }
28 }

 

 posted on 2018-04-12 19:03  几缕清风依旧  阅读(155)  评论(0编辑  收藏  举报