1、包装类概述

基本类型的包装类主要提供了更多的实用操作,这样更容易处理基本类型。所有的包装类都是final的,所以不能创建其子类,包装类都是不可变对象

基本类型 包装类
byte Byte
short Short
char Character
int Integer
long Long
float Float
double Double
boolean Boolean

2、类层次结构

图片1.png
除了boolean和Character外,其它的包装类都有valueOf()和parseXXX方法,并且还具有byteVaue(),shortVaue(),intValue(),longValue(),floatValue()和doubleValue()方法,这些方法是最常用的方法

  1. public class IntegerTest01 {
  2. public static void main(String[] args) {
  3. int i1 = 100;
  4. Integer i2 = new Integer(i1);
  5. double i3 = i2.doubleValue();
  6. String s = "123";
  7. int i4 = Integer.parseInt(s);
  8. Integer i5 = new Integer(s);
  9. Integer i6 = Integer.valueOf(s);
  10. }
  11. }

3、JDK5.0的新特性

在JDK5.0以前,包装类和基本类型做运算时,必须将包装类转换成基本类型才可以,而JDK5.0提供Auto-boxing/unboxing(自动装箱和拆箱)

  1. 自动将基础类型转换为对象
  2. 自动将对象转换为基础类型

    1. public class IntegerTest01 {
    2. public static void main(String[] args) {
    3. //jdk1.5以前版本,必须按如下方式赋值
    4. Integer i1 = new Integer(100);
    5. //jdk1.5及以后版本支持
    6. //自动装箱
    7. Integer i2 = 100;
    8. //jdk1.5及以后版本支持
    9. //自动拆箱
    10. int i3 = i2;
    11. //jdk1.5以前版本,必须按如下方式赋值
    12. int i4 = i2.intValue();
    13. }
    14. }

    4、常用方法

    ```java int i = Integer.parseInt(“223”); String s = Integer.toBinaryString(125); String d = Integer.toHexString(125); String s1 = Integer.toOctalString(125); Integer i2 = Integer.valueOf(“100”);

```