Java 包装类(知识点总结)

一、包装类

  • 首先因为Java语言是纯粹的面向对象语言,将一切事物都视为对象处理。
  • 但原始类型不属于对象,并不满足Java面向对象的思想,但在我们使用原始类型的时候并不需要创建对象,直接保存在栈中,效率更高。
  • 为了能让原始类型也能有对象的类,从而达到“一切事物都视为对象处理”的思想,所以就有了包装类的概念。
  • 包装类就是原始类型对应的类型。
Java中有八种基本数据类型:byte、short、int、long、float、double、boolean、char
相对应的八种包装类:Byte、Short、Integer、Long、Float、Double、Boolean、Character

包装类通常用于将字符串转换对应的原始类型。

包装类原始类型将字符串转换为原始类型
BytebyteByte.parseByte(String str)
ShortshortShort.parseShort(String str)
IntegerintInteger.parseInt(String str)
LonglongLong.parseLong(String str)
FloatfloatFloat.parseFloat(String str)
DoubledoubleDouble.parseDouble(String str)
BooleanbooleanBoolean.parseBoolean(String str)
Characterchar/

特点

  • 八种原始类型当中,除了int和char之外,其余类型的包装类,都是将首字母改为大写。(int为Integer、char为Character)

  • 除了Character类之外,其余的包装类都有至少两个构造方法:参数为原始类型或者字符串,而Character只有一个构造方法:参数为char变量。

  • 除了Character类之外,其余的包装类都有静态方法parse原始类(String str),用于将字符串转换为相对于的原始类型。

  • 数值类型的包装类的parsexxx( )方法,如果不是一个对应类型的数,转换时则会抛出NumberFormatException异常。(例如:“12345a”,"123.456"都不能使用Integer.parse( )转换)

  • Boolean类中的parseBoolean()方法,参数如果是"true"这个单词,无论大小写,都能转换
    为真正的boolean值的true,只要不是"true"这个单词,转换结果都为false。

  • 除了Boolean类之外,其余类都有MAX_VALUE和MIN_VALUE这两个静态属性,用于获取对应原
    始类型支持的最大最小范围。

  • 所有包装类中都有一个compareTo(参数1,参数2)方法,用于比较两个参数。
    如果是数值型,参数1>参数2返回1,参数1<参数2返回-1,相同返回0。
    如果是Boolean型,两个参数相同返回0,不同时,如果参数1为true返回1,否则返回-1。
    如果是Character型,返回参数1-参数2的值。

  • 所有包装类中都有toString()方法,用于将包装类对象转换为String字符串对象。

装箱和拆箱

  • 装箱
    • 所有的包装类都有一个静态的方法valueOf(原始类型),将对应的原始类型的数据转换为相对于的包装类对象 。
  • 拆箱
    • 有包装类都有一个原始类型Value()方法,用于将包装类对象转换为原始类型,这个过程称为拆箱。
  • 自动装箱拆箱
    • 自动装箱拆箱。在jdk1.5之后,加入了自动装箱拆箱的特性,可以直接在原始类型和对应的包装类
      中互相赋值
//手动装箱
int num = 123456;//定义一个int类型的数据
Integer numInteger = Integer.valueOf(num);//调用包装类的valueOf( )方法将原始类型转换成包装类对象

//手动拆箱
Integer numInteger =new Integer(123456);//创建一个包装类对象
int num = numInteger.intValue();//调用包装类的"原始类型Value()"方法将其转换为原始类型

//自动装箱
Integer numInteger =123;
//自动拆箱
int i=numInteger ;

自动装箱的赋值范围在 -128~127之间,将这个范围内的数保存到了"自动装箱池"中,如果赋值范围超出了 -128~127之间,就会自动创建新的包装类对象。

以上就是自己所总结的包装类的相关基础知识。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值