秒懂基本类型自动装箱

秒懂自动装箱与拆箱

秒懂基本类型自动装箱

1.概述

每种基本类型都对应一种引用数据类型,叫做基本数据类型包装类

2.基本类型对应包装类

 

 

3.自动拆装箱: JDK5的新特性

在集合中直接存储数字时,给予的是基本类型int类型的数字10,实际存储时,会将int类型的10创建为Integer的对象,再将对象放到集合中。这个自动创建对象的过程叫做自动装箱。

自动装箱:把基本数据类型转成基本数据类型包装类对象

自动拆箱:基本数据类型包装类对象转成基本数据类型.

    Integer i = new Integer(10);// 装箱

    Integer in = i+10;// 自动装箱,i先自拆,运算,再装,

int num = in + 20;// 自动拆箱,in先自拆,然后相加

基本类型值才能参与运算符运算

参与运算时包装类会自动变成基本数据类型

 

注意:

    在使用时,Integer  x = null;代码就会出现NullPointerException

    建议先判断是否为null,然后再使用。

案例:

  1. public class Demo4_JDK5 {
  2.    public static void main(String[] args) {
  3.       Integer i3 = null;
  4.       int a = i3 + 100; //底层用i3调用intValue,但是i3是null,null调用方法就会出现空指针异常java.lang.NullPointerException
  5. int y = i1.intValue(); //将对象转换为基本数据类型
  6.  
  7.    }
  8. }

 

案例

  1. import java.util.ArrayList;
  2. public class DemoArrayList06 {
  3.    public static void main(String[] args) {
  4.       //创建集合对象
  5.       ArrayList<Integer> list = new ArrayList<Integer>();
  6.       Integer i = new Integer(10);
  7.       Integer i2 = new Integer(20);
  8.       Integer i3 = new Integer(40);
  9.       //添加元素
  10.       list.add(i);
  11.       list.add(i2);
  12.       list.add(i3);
  13.       //将基本类型值,先自动装箱成对象,再放入集合中
  14. // list.add(10);
  15. // list.add(20);
  16. // list.add(40);
  17.  
  18.       System.out.println(list);
  19.    }
  20. }

 

转换进制

将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据。

常用的操作之一:用于基本数据类型与字符串之间的转换。

转换进制

案例:

  1. public class Demo1_Integer {
  2.    public static void main(String[] args) {
  3.       System.out.println(Integer.toBinaryString(60));(转二进制)
  4.       System.out.println(Integer.toOctalString(60)); (转八进制)
  5.       System.out.println(Integer.toHexString(60)) ;(转十六进制)
  6.    }
  7. }

 

转载于:https://www.cnblogs.com/wk520hll/p/6528691.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值