java中基本数据类型、包装类及字符串之间的相互转换

基本数据类型:不支持面向对象的编程机制(没有属性和方法),即不支持面向对象,之所以提供8中基本数据类型,是为了方便常规数据的处理。

包装类:通过包装类可以将基本数据类型的值包装为引用数据类型的对象,使其具有面向对象的特征。 

下面是8中基本数据类型及其对应的包装类:      

基本类型对应的包装类
基本类型 包装类
byte Byte
char Character
int Integer
short Short
long Long
float Float
double Double
boolean Boolean

除了Integer和Character类外,其他对应的包装类的名称都与其基本数据类型一样,只不过首字母大写。

基本数据类型和字符串转换为包装类的方法:

public class TestDemo01 {

    public static void main(String[] args) {        
        //首先定义两个变量    
        int num = 20;
        String str = "998";
        //1.自动装箱可以将基本类型转换为包装类
        Integer i = num;
        System.out.println("通过自动装箱的方法将int变量转换为包装类的结果:"+i);
        //2.通过包装类的valueOf()静态方法将基本类型和字符串转换为包装类
        Integer i1 = Integer.valueOf(num);
        Integer i2 = Integer.valueOf(str);
        System.out.println("将int变量转换为包装类的结果:"+i1);
        System.out.println("将字符串变量转换为包装类的结果:"+i2);
        //3.通过包装类的有参构造方法将基本类型和字符串转换为包装类
        Integer i3 = new Integer(num);
        Integer i4 = new Integer(str);
        System.out.println("通过构造器将int变量转换为包装类的结果:"+i3);
        System.out.println("通过构造器将字符串变量转换为包装类的结果:"+i4);
        
    }

}

基本类型转换为字符串的方法:

public class TestDemo02 {

    public static void main(String[] args) {
        //首先定义变量
        int i = 20;
        //1.通过String.valueOf()方法将基本类型转换为字符串
        String str = String.valueOf(i);
        System.out.println("将基本类型转换为字符串的结果:"+str);
        //2.通过包装类的toString()方法将包装类转换为字符串
        String str1 = Integer.toString(i);
        System.out.println(str1);
        //3.用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串
        String str2 = i+"";
        System.out.println(str2);
    }

}

字符串转换成基本类型的方法:

public class TestDemo03 {

    public static void main(String[] args) {
        String str = "998";
        //1.通过包装类的parseXxx()静态方法将字符串转换为基本数据类型
        int parseInt = Integer.parseInt(str);
        System.out.println(parseInt);
        //调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱
        int i = Integer.valueOf(str);
        System.out.println(i);
    }

}

 

包装类转换为基本数据类型和字符串的方法:

public class TestDemo04 {

    public static void main(String[] args) {
        int a = 20;
        String str = "998";
        //先将它们转换为包装类
        Integer b = a;
        Integer integer = Integer.valueOf(str);
        //1.自动拆箱,将包装类转换为基本数据类型
        
        int c = b;
        System.out.println(c);
        //2.通过包装类的toString()方法将包装类转换为字符串
        String str1 = Integer.toString(integer);
        
    }

}

 

 注意:除了Character外,包装类都有valueOf(String s)和parseXxx(String s)方法,其中参数 s 不能为null,而且字符串必须是可以解析为对应基本类型的数据,

否则编译通过,当运行会报错。

public class TestDemo05 {

    public static void main(String[] args) {
        Integer i = Integer.valueOf("123");//合法
        Integer i1 = Integer.valueOf("12a");//不合法
        int a = Integer.parseInt("123");//合法
        Integer in = Integer.parseInt("itcast");//不合法
    }

}

 

上一篇:java移位运算符对右侧参数进行模运算


下一篇:如何在Java中将String转换为int?推荐| Java Debug 笔记