java的自动装箱和自动拆箱
自动装箱和自动拆箱是基本数据类型和引用数据类型间的相互转换的功能,java的八大基本数据类型,都有对应的引用类型,自动装箱是将基本数据类型转为引用类型,自动拆箱是将引用类型转为基本数据类型,Integer,int,
如果要进行拆箱的话,要看对象是否为null,不能对null进行拆箱,会出现空指针异常
自动装箱是调用了源码中的方法valueof(),自动拆箱是调用了xxxvalue()方法,在这些类型里,Integer类型是[-128,127],是固定的,为了避免多次创建对象,事先创建好一个数组,如果值在这个范围内,就返回实现创建好的对象
对于float,double这种范围很大的数据类型,是直接创建一个对象,每次创建的对象都不一样,对于boolean类型,是已经创建好的两个对象,每次返回的都是相同的对象
在进行==或者是算术运算时会进行自动拆箱,在equals()时会自动装箱
character,byte,short,long,valueof()实现类似,均在[-128,127]内,
        自动装箱和自动拆箱是基本数据类型和引用数据类型间的相互转换的功能,java的八大基本数据类型,都有对应的引用类型,自动装箱是将基本数据类型转为引用类型,自动拆箱是将引用类型转为基本数据类型,Integer,int,
如果要进行拆箱的话,要看对象是否为null,不能对null进行拆箱,会出现空指针异常
自动装箱是调用了源码中的方法valueof(),自动拆箱是调用了xxxvalue()方法,在这些类型里,Integer类型是[-128,127],是固定的,为了避免多次创建对象,事先创建好一个数组,如果值在这个范围内,就返回实现创建好的对象
对于float,double这种范围很大的数据类型,是直接创建一个对象,每次创建的对象都不一样,对于boolean类型,是已经创建好的两个对象,每次返回的都是相同的对象
在进行==或者是算术运算时会进行自动拆箱,在equals()时会自动装箱
character,byte,short,long,valueof()实现类似,均在[-128,127]内,
全部评论 
 相关推荐
 点赞 评论 收藏   
分享
  我的offer呢😡:这不才9月吗,26到明年毕业前能一直找啊
我的offer呢😡:这不才9月吗,26到明年毕业前能一直找啊 点赞 评论 收藏   
分享
  点赞 评论 收藏   
分享
  基恩士成长空间 421人发布
基恩士成长空间 421人发布