基本数据类型封装类型

基本数据类型封装类型的自动装箱和拆箱

基本数据类型封装类型

在java的学习中每一个基本数据类型都有一个与之相对应的引用数据类型,基本数据类型一般用数据的运算,布尔逻辑,关系等运算,但是无法创建对象,也就无法调用数据类型相关的方法。可以通过基本数据类型的封装类型来进行方法的调用。以int类型作为举例。
在java的学习中每一个基本数据类型都有一个与之相对应的引用数据类型,基本数据类型一般用数据的运算,布尔逻辑,关系等运算,但是无法创建对象,也就无法调用数据类型相关的方法。可以通过基本数据类型的封装类型来进行方法的调用。以int类型作为举例。
在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的。而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类型,考试成绩需要转换成double类型等。那么,想实现字符串与基本数据之间转换怎么办呢?
Java中提供了相应的对象来解决该问题,基本数据类型对象包装类:java将基本数据类型值封装成了对象。封装成对象有什么好处?可以提供更多的操作基本数值的功能。
其中需要注意int对应的是Integer,char对应的Character,其他6个都是基本类型首字母大写即可。

基本数据类型封装类型
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

自动装箱和拆箱

在需要进行使用的情况下,基本数据类型和封装类型是可以通用的。有些时候我们必须使用引用数据类型,可以传入基本数据类型
比如:
基本数据类型可以使用运算符进行运算,但是引用数据类型不可以。基本数据类型的封装作为引用数据类型的时候可以进行计算。
原因在于,java在后台"偷偷的"自动进行了对象转换成基本数据类型
引用数据类型的对象的值必须是new出来的内存空间,而我们就可以将一个基本数据类型的值,赋值给一个基本数据类型的封装类型的引用。java在底层偷偷的将基本数据类型转换成了对象
特殊:底层有一个IntegerCache的缓存数组,存储的范围的值是:-128 ---- 127 之间,如果是这个范围就返回为true
如果不在这个返回,底层就会新new出来一个Integer对象,所以地址比较的时候就会返回为false

  1. 自动拆箱
    对象转换成基本数据类型 Integer —> intValue —> int
  2. 自动装箱
    基本数据类型转成对象 int —> valueOf —> Integer
    Integer i = 6; //自动装箱,相当于使用Integer i = Integer.valueO(6)
    i = i + 5;//等号右边 : 将i对象转换成基本数据类型(自动拆箱)
    i.intVaule() + 5 //加法计算完成之后,在此再次装箱,把基本数据传给对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值