把字符串转换成整数(atoi)_牛客题霸_牛客网 (nowcoder.com)
import java.util.*;
public class Solution {
public int StrToInt (String s) {
if(s.isEmpty()){
return 0;
}
char[] ch=s.toCharArray();
int i=0;
while(i<ch.length&&ch[i]==' '){
i++;
}
if(i==ch.length){
return 0;
}
boolean flg=false;
if(ch[i]=='-'){
flg=true;
i++;
}else if(ch[i]=='+'){
i++;
}
int sum=0;
while(i<ch.length&&ch[i]>='0'&&ch[i]<='9'){
int tmp=sum*10;
if(tmp/10!=sum){
if(flg){
return Integer.MIN_VALUE;
}else{
return Integer.MAX_VALUE;
}
}
sum=tmp+ch[i]-'0';
i++;
}
if(sum<0){
if(flg){
return Integer.MIN_VALUE;
}else{
return Integer.MAX_VALUE;
}
}
return flg?(-1)*sum:sum;
}
}