java-包装类

包装类存在的意义:

1、对于有些情况,我们不能使用基本数据类型,只能使用引用数据类型。这个时候使用包装类对基本数据类型进行类话来实现。

在jdk1.5前,我们必须手动将基本数据类型数据包装,1.5版本后,当需要包装类时会自动将基本数据类型包装。

2、使用包装类的各种方法+常量,可以实现对基本数据类型的数据的各种操作,方便使用。

 

*、包装类的类型

 基本数据类型         包装类
 * byte            java.lang.Byte
 * short        java.lang.Short
 * int            java.lang.Integer
 * long            java.lang.Long
 * 
 * float        java.lang.Float
 * double        java.lang.Double
 * 
 * boolean        java.lang.Boolean
 * 
 * char            java.lang.Character

 

*、包装类的创建方法

public class Test01
{

    public static void main(String[] args) {
        
        int a = 123;
        //方法1,包装类调用基本类型变量
        Integer a1 = new Integer(a);
        //方法2
        Integer a2 = new Integer(123);
    }
}

 

*、对于有些情况,我们不能使用基本数据类型,只能使用引用数据类型。这个时候使用包装类对基本数据类型进行类话来实现。

public class Test02
{
    public static void main(String[] args) {

        int a = 123;
        boolean b = true;
        //jdk1.5版本之前,八中基本数据类型是不同直接赋值给Object类,需要进行包装类进行包装
        Integer a1 = new Integer(a);
        Boolean b1 = new Boolean(b);
        
        d1(a1);
        d1(b1);
        
        //知道jdk1.5后,才可以直接将八中基本数据类型赋值给Object类,因为系统自动进行了包装
        d1(a);
        d1(b);

    }

    //方法d1,入参可以是多有的数据类型,包括所有的引用数据类型+基本数据类型
    public static void d1(Object o) {
        System.out.println(o);
    }
}

 

*、使用包装类的各种方法+常量,可以实现对基本数据类型的数据的各种操作,方便使用。--包装类的常用方法

public class Test02 
{
    public static void main(String[] args) {

        //1、包装类Integer的常量MAX_VALUE、MIN_VALUE
        System.out.println(Integer.MAX_VALUE);//获取int类型的最大值
        System.out.println(Integer.MIN_VALUE);//获取int类型的最小值
        
        //2、intValue()包装类转化为基本数据类型的数据
        Integer a = new Integer(123);
        int a1 = a.intValue(); //123

        //、看来高版本的jdk,可以自动在包装类转和基本数据类型转换,其实是自动添加了intValue()方法
        int a2 = a;
        Integer b = 124;
        
        //3、‘重要 ’  parseInt()方法,将String类型的数字转换为int类型数字
        //通过前台输入年龄,此时这个年龄是字符串类型,需要转换为int类型后台处理
        int age = Integer.parseInt("26");//结果就是26
        
        //int age1 = Integer.parseInt("abc"); //这样是不行的,字符串中需要保存的是数字
        
        //4、toBinaryString(x)转换为二进制,toOctalString(x)转换为八进制 ,toHexString(x)转换为16进制
        String s1 = Integer.toBinaryString(11);
        String s2 = Integer.toOctalString(11);
        String s3 = Integer.toHexString(11);
        
        System.out.println(s1);//1011
        System.out.println(s2);//13
        System.out.println(s3);//b
        
        //5、valueOf()方法,将String类型的数字或者int类型的数字转换为Integer
        Integer a4 = Integer.valueOf(123);//123
        Integer a5 = Integer.valueOf("123");//123
    }
}

接下来下一篇文章总结Interger  int  String三种类型之间的相互转换方式

posted on 2019-04-19 20:24  jesse_zhao  阅读(133)  评论(0编辑  收藏  举报

导航