Java中基础类型转为封装类的简介说明

java 文章 2022-07-21 17:20 354 0 全屏看文

AI助手支持GPT4.0

转自:

http://www.java265.com/JavaCourse/202204/3160.html

下文笔者讲述Java中基础类型转封装类的简介说明,如下所示:

boolean—>Boolean
int—>Integer
double—>Double
float—>Float
char---->Character
short—>Short
long—>Long
byte—>Byte
自动装箱:将基本数据类型转换成封装类,编译调用valueOf
手动装箱:调用Integer.valueOf(1)
自动拆箱:把封装类转换成基本数据类型,编译调用XXXValue()

例:

Integer i = Integer.valueOf(1);
int x = i;//自动拆箱,int x = i.intValue();手动拆箱

自动装箱的缓存问题
    超出缓存范围[-128,127]
   从堆内存中new一个新的对象返回
  Integer缓存范围可以设置(java.lang.Integer.IntegerCache.high=10000)
------------------------------------------------------------------------------
Boolean:两个缓存值TRUE,FALSE
Byte占1个字节:[-128,127],因为范围不大,所以全部256个值都是缓存的
Short,Long缓存范围是[-128,127],而且不可更改
      也无法通过extends方式扩展,因为这两个类是final的
Float,Double没有缓存,每次valueOf(1.0)都是返回一个堆中的新对象
封装类可判断是否为空
-EOF-

AI助手支持GPT4.0