不使用JDK的方法自己实现字符串转整数

Posted 十光年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不使用JDK的方法自己实现字符串转整数相关的知识,希望对你有一定的参考价值。

暂未考虑正负符号的情况。

    public static int parseInt(String str) {
        if (str == null || str.trim() == "") throw new NumberFormatException("For input string:" + str);
        char[] chars = str.toCharArray();
        long result = 0;
        for (int i = 0; i < chars.length; i++) {
//是否是‘0‘到‘9‘之间的字符
if (chars[i] < ‘0‘ || chars[i] > ‘9‘) throw new NumberFormatException("For input string:" + str);
//先根据字符之间进行运算来得到int值,再根据每个数字所在的位数来计算应该乘10的几次幂,最后累加。比如【3256=3*1000+2*100+5*10+6】 result
+= (chars[i] - ‘0‘) * Math.pow(10, chars.length - i - 1) ; }
//是否超出int的最大值
if (result > Integer.MAX_VALUE) throw new NumberFormatException("For input string:" + str); return (int) result; }

 

以上是关于不使用JDK的方法自己实现字符串转整数的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript笔试题(js高级代码片段)

c语言中字符串能否转为代码执行?或者有啥替代办法?

几个有用的JavaScript/jQuery代码片段(转)

输入十进制整数num转化成二进制字符串输出

实现整数转成字符串

实现整数转成字符串