SentralLiu

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

包装类

=======================装箱与拆箱=======================
java语言特性: 面向对象
为了承诺java中一切皆为对象,八大基本类型需要有对应的包装类的类型,
包装类是一个引用类型,具备了面向对象的特点
int--->Integer
char-->Character
其余只需首字母大写就变成了包装类

基本类型与包装类的转换

public class Test1 {
    public static void main(String[] args) {
        //------装箱:基本类型转包装类-------
        int a = 3;
        Integer integer = new Integer(a);  //构造器方式
        integer = Integer.valueOf(a);      //静态方法方式
        System.out.println(integer);       //Integer重写了toString
        
        //-------拆箱:包装类转基本类型--------
        a = integer.intValue();
        System.out.println(a);
        
        //---------自动装箱------------
        Integer integer2 = a;
        int b = integer2;    //自动拆箱
        //注意:自动装箱和拆箱的本质依然需要通过手动装箱和拆箱,只不过系统帮我们做了
        //查看反编译工具
        
        
        //其他类型与数字字符串的操作
        //1.其他类型转字符串
        String s = integer2+"";
        
        //2.字符串转基本类型
        int c = Integer.parseInt(s);
        double d = Double.parseDouble(s);
        
        //3.字符串转包装类型
         Integer integer3 = new Integer(s);
        
    }
}

==========================包装类的用法=========================
包装类的用法

public class Test2 {
    public static void main(String[] args) {
        Integer integer = new Integer(10);
        Integer integer2 = new Integer(10);
        System.out.println(integer==integer2);  //false  比较地址
        
        //valueOf:传入的参数为-128~127之间,那么预先给定了空间;所以每次传的值一致,则是同一个地址
        Integer integer3 = Integer.valueOf(10);
        Integer integer4 = Integer.valueOf(10);
        System.out.println(integer3==integer4); //true
        
        Integer integer5 = Integer.valueOf(300);
        Integer integer6 = Integer.valueOf(300);
        System.out.println(integer5==integer6); //false
    }
}


 

posted on 2021-10-27 19:00  SentralLiu  阅读(39)  评论(0)    收藏  举报