专业的JAVA编程教程与资源

网站首页 > java教程 正文

java基本类型部分理解(java基本类型部分理解是什么)

temp10 2024-11-17 02:02:56 java教程 12 ℃ 0 评论

个人理解,如有错误,欢迎指正,谢谢。


java基本类型部分理解(java基本类型部分理解是什么)

1.基本类型 和 封装类型 运算或比较 时,

例如 int+Integer或boolean&Boolean,特别是经常出现的 int==Integer

java都会先将封装类型 拆箱,再进行运算,而拆箱 是调用“基本类型Value()函数,所以如果封装类型为null时会报 空指针异常 NullPointerException,就是因为调用了函数。

2.因为上述大部分类型对于数值的缓存,所以 封装类的使用上,例如

Integer a = 127, b = 127; 
Integer a1 = 128, b1 = 128; 
System.out.println(a == b); //TRUE 
System.out.println(a1 == b1);//FALSE
Character a = 127, b = 127; 
Character a1 = 128, b1 = 128;
 Character a2 = (char)-1, b2 = (char)-1; 
System.out.println(a == b);//TRUE
 System.out.println(a1 == b1); //FALSE
 System.out.println(a2== b2); //FALSE

都一样,是这个性质,因为都是调用的“封装类.valueOf”方法返回的对象,而这个对象 在缓存中有时,会返回缓存对象。

BooleanByte特别在 他们所i有的值 都在缓存中有。

Character 有意思在,虽然负数也在该范围内,但没缓存,可能是 用不到


2.byte,char,short,Int,long之间的转换

位数 到 高 位数 转换 没问题

从高位 到 低位 转换 就是 直接取 低位

例如 long 转int 就是 取long的低32位作为 int的值,这时 如果 32位的 第一个二进制是1,那转为int就是 负数

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表