标签:als 拆箱 body 其他 binary float octal nbsp 进制
用来封装一个基本类型值,有时需要把基本类型值,当做引用类型来使用。例:
void f(Object obj) { } // f(6)无法直接传入一个int类型的整数6 f(new Integer(6))
byte |
Byte |
short |
Short |
int |
Integer |
long |
Long |
float |
Float |
double |
Double |
char |
Character |
boolean |
Boolean |
Integer类中,有一个 Integer 对象缓存数组,其中缓存了 256 个对象,封装的值范围 [-128, 127]
指定范围内的值,直接访问缓存对象
指定范围外的值,新建对象
Integer.parseInt("255") 255
Integer.parseInt("11111111", 2) 255
Integer.parseInt("ff", 16) 255
Integer.parseInt("377", 8) 255
Integer.toBinaryString(255) "11111111"
Integer.toOctalString(255) "377"
Integer.toHexString(255) "ff"
基本类型值,自动封装成包装类型
Integer a = 6;
编译器编译成:
Integer a = Integer.valueOf(6);
自动取出包装对象中封装的值
int i = a;
编译器编译成:
int i = a.intValue();
a = a + 1;
编译器编译成:
a = Integer.valueOf(a.intValue() + 1);
注:自动拆箱,要当心 null 值
BigDecimal 做精确的浮点数运算
BigInteger 做超大的整数运算
BigDecimal.valueOf(2)
add(BigDecimal bd)
subtract(BigDecimal bd)
multiply(BigDecimal bd)
divide(BigDecimal bd)
divide(BigDecimal bd,保留位数,舍入方式)
setScale(保留位数,舍入方式)
标签:als 拆箱 body 其他 binary float octal nbsp 进制
原文地址:https://www.cnblogs.com/houyu/p/11873426.html