我是靠谱客的博主 光亮悟空,最近开发中收集的这篇文章主要介绍JAVA字符串如何转换成数字(StringToNumber),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

public class StringToNumber {
    public static void main(String[] args) {
        String str = "123";

        Integer num1 = new Integer(str);

        int num2 = Integer.parseInt(str);

        Integer num3 = Integer.valueOf(str);

        System.out.println(num1+"t"+num2+"t"+num3);

    }
}

如果是单个字符或者字符串则需要先切开转换为char字符再转换  不然像上面直接转化会空指针异常

String a = "ABC";

//将String对象中的每一个下标位的对象保存在数组中

char[] b = a.toCharArray();

//转换成响应的ASCLL

for (char c : b) {

System.out.println(Integer.valueOf(c));

}

原理分析:

Interger类的构造方法

直接入源码,看看这个构造方法:

 
  1. public Integer(String s) throws NumberFormatException {

  2. this.value = parseInt(s, 10);

  3. }

这个this.value 是什么呢?继续追踪源码:

 private final int value;

 由此,可以发现包装类的一个特点:

在包装内的内部,将这个包装类对应的基本数据类型作为一个私有的属性,对外将这个基本数据类型的值(value)封装成为一个对应的包装类的对象。

在Integer的构造方法中,我们发现调用了parseInt(String s)方法,我们继续追踪,就来到文章的开篇演示的第二种方法中:

parseInt(String s)方法

 
  1. public static int parseInt(String s) throws NumberFormatException {

  2. return parseInt(s,10);

  3. }

  4. //上一个:第一次方法的封装,

  5. //下一个:实际完成字符串转为数字的方法

  6. public static int parseInt(String s, int radix)throws NumberFormatException

valueOf(String s)方法

 
  1. public static Integer valueOf(String s) throws NumberFormatException {

  2. return Integer.valueOf(parseInt(s, 10));

  3. }

最后一个方法,其实也是在调用parseInt()方法(第二个)

最后

以上就是光亮悟空为你收集整理的JAVA字符串如何转换成数字(StringToNumber)的全部内容,希望文章能够帮你解决JAVA字符串如何转换成数字(StringToNumber)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部