Java 基本类型 vs 包装类 揭密

46 阅读1分钟

基本类型 vs 包装类

回答

  • 因为,Java 是一种面向对象语言,很多地方都需要使用对象,而不是基本数据类型。

比如,在集合类中,我们是无法将int、double等类型放进去的。

因为,集合的容器要求元素是Obiect类型

  • 8 种基本类型和对应的包装类

image-20241220152348441

扩展

1、如何理解 自动拆箱与装箱
  • 拆箱与装箱

    1. 把基本数据类型转换成包装类的过程就是装箱
    2. 把包装类转换成基本数据类型的过程就是拆箱
  • 自动拆装箱

    1. 自动装箱

      就是将基本数据类型自动转换成对应的包装类

    2. 自动拆箱

      就是将包装类自动转换成对应的基本数据类型

    3. 代码例子

      • image-20241220153019145
  • 自动拆装箱原理

    • 自动装箱,通过 包装类的valueof()方法来实现的.
    • 自动拆箱,通过 包装类对象的xxValue()来实现的。
2、哪些地方会用自动拆装箱
  1. 基础类型放入包装类

    • image-20241220153255662
    • 反编译
    • image-20241220153359042
  2. 包装类型和基本类型的大小比较

    • image-20241220153332178
    • 反编译
    • image-20241220153412591
  3. 包装类型的运算

    • image-20241220153455411
    • 反编译
    • image-20241220153509660
  4. 三目运算

    • image-20241220153529827
    • 反编译
    • image-20241220153545100
  5. 函数参数与返回值

    • image-20241220153635590
3、Integer 与 缓存
  • 代码

    • image-20241220154222172
  • 输出

    • image-20241220154234813