JAVA--字符串转int

给定一个String类型的字符串,例如String str = "123";
将他转换为int类型
package exercises2;
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";
int a = new Integer(str);
Integer b = Integer.valueOf(str);
int c = Integer.parseInt(str,10);//直接调用parseInt(字符串变量名,要转换的进制例如10进制)
//写的方法,不如上面方便
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;
}
}
posted @   学JAVA的旅行者  阅读(372)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示