加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在Java中将字符串手动转换为整数

发布时间:2020-12-14 17:47:32 所属栏目:Java 来源:网络整理
导读:我有一串由数字序列组成的字符串(例如“1234”).如何将String作为int返回,而不使用 Java的库函数,如Integer.parseInt? public class StringToInteger { public static void main(String [] args){ int i = myStringToInteger("123"); System.out.println("S
我有一串由数字序列组成的字符串(例如“1234”).如何将String作为int返回,而不使用 Java的库函数,如Integer.parseInt?
public class StringToInteger {
  public static void main(String [] args){
    int i = myStringToInteger("123");
    System.out.println("String decoded to number " + i);
  }

  public int myStringToInteger(String str){
      /* ... */
  }
}

解决方法

这是什么问题?
int i = Integer.parseInt(str);

编辑:

如果您真的需要手动进行转换,请尝试:

public static int myStringToInteger(String str) {
    int answer = 0,factor = 1;
    for (int i = str.length()-1; i >= 0; i--) {
        answer += (str.charAt(i) - '0') * factor;
        factor *= 10;
    }
    return answer;
}

如果数字是负数,那么上面的代码可以正确的整数工作,你必须首先做一点检查,但是我会把它作为读者的练习.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读