给定一个String类型的字符串,例如String str = "123";
将他转换为int类型
package exercises2;标签:index,java,String,--,int,result,str,firstChar From: https://www.cnblogs.com/wang1999an/p/16793975.html
import com.sun.org.apache.bcel.internal.generic.RETURN;
import java.util.Objects;
public class TranFor {
public static void main(String[] args) {
String str = "123";
System.out.println(tranForMation(str));
}
private static int tranForMation(String str) {
Objects.requireNonNull(str);
int length = str.length();
if (length == 0) {
throw new NumberFormatException("字符串为空");
}
final int radix = 10;
int index = 0;
boolean flag = false;
char firstChar = str.charAt(index);
if (firstChar == '-') {
flag = true;
index++;
} else if (firstChar == '+') {
index++;
} else if (firstChar < 48 || firstChar > 57) {
throw new NumberFormatException("字符串为空");
}
int result = 0;
while (index < length) {
char ch = str.charAt(index++);
if (ch < 48 || ch > 57) {
throw new NumberFormatException("字符串为空");
}
int num = ch - 48;
result = num+result*radix;
}
return flag?-result:result;
}
}