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]内,
全部评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
09-28 11:38
门头沟学院 前端工程师 点赞 评论 收藏
分享
09-04 20:39
南京林业大学 机械工程师
阿武同学:基本信息保留前面三行,其他的可以全部删掉,邮箱最重要的你没写,主修课程精简到8个以内,实习里面2/3/4都是水内容的,非要写的话建议两到三句话,项目经历排版优化下,自我评价缩到三行 点赞 评论 收藏
分享

