2.包装类

1.概述

包装类就是基本类型转化成为对象的类(Java.lang.Number类下的子类提供了6种基本类型的包装 类)。

每一个基本类型都有一个与之对应的包装类(wrapper)。

 

2.转换关系

        //1.基本类型-->包装类
        int i=100;
        Integer integer=Integer.valueOf(i);
        System.out.println(integer);

        //2.包装类-->基本类型
        Integer integer1=100;
        int i1=integer1.intValue();
        System.out.println(i1);

        //3.基本类型-->String
        int i3=200;
        String s=String.valueOf(i3);
        System.out.println(s);

        //4.!!String-->基本类型
        //问:传入的参数String不匹配int会怎么样?
        // 编译没有异常(代码没有报错),解析异常NumberFormatException
        String s1="123";
        int i2=Integer.parseInt(s1);//!
        System.out.println(i2);

        //5.String -->包装类 234.0 NumberFormatException//String 本质上是char类型的数组
        String s2="234";
        Integer integer2=Integer.valueOf(s2);
        System.out.println(integer2);


        //6.包装类 -->String

        Integer integer3=123321;
        String s3=integer3.toString();
        System.out.println(s3);

3.自动装箱和拆箱

jdk5.0后加入了autoboxing(自动装箱和拆箱)功能。

自动装箱拆箱就是编译器在生成字节码时自动完成了包装类和基本类型间的相互转换的方法调用

装箱: 基本类型--->包装类 拆箱: 包装类--->基本类型

        //7.autoboxing:基本类型和包装类之间的转换,是自动完成的       Jdk1.5
        //直接写出来的数字默认为int,直接写出来的小数默认为double,直接量
        Integer x=100;//Integer.valueOf(100);//自动装箱 本来应该强转Integer = (Integer)int;
        Integer y=200;
        /*
        int x=x.intValue();//自动拆箱
        int y=y.intValue();//自动拆箱
        int z=x+y;
        Integer z=Integer.valueOf(z);//自动装箱
         */
        Integer z=x+y;
        System.out.println(z);//300

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值