Java基本数据类型的包装类(Wrapper Class)

8种基本类型对应的包装类:

基本类型包括整数类型(byte,short,int,long),字符类型 char,浮点类型(float、double),布尔类型 boolean

基本数据类型 包装类
byte     1字节   -128(-2^7) ~ 127(2^7 -1) Byte
short     2字节  0x8000(-2^15) ~ 0xffff(2^15 - 1) Short
int        4字节  0x80000000(-2^31) ~ 0xffffffff(2^31 -1) Integer
long     8字节 Long
char     2字节 Character
float     4字节 Float
double  8字节 Double
boolean (没强制指定,一般是 1字节) Boolean

以Integer为例,

装箱:将基本类型转换为包装类
Integer i1 = new Integer(10);
Integer i2 = Integer.valueOf(10);//推荐,带有缓存

拆箱:将包装类转换为基本类型
int val = i1.intValue();

jdk1.5后,提供自动装箱(Autoboxing)和自动拆箱(AutoUnboxing)
Integer i1 = 10;
int value = i1;

String对象 <--> 基本类型变量
String --> int 等 :
int Integer.parseInt(String str)

int 等 --> String
String String.valueOf(int val)  或者  10 + “”;

当然,可以构造为Integer,然后自动拆箱;这样就麻烦了。。

String <--> 包装类

String --> Integer

Integer i1 = new Integer("12"); 或者 Integer i1 = Integer.valueOf("12")
包装类 --> String
String str = 任何对象.toString();

 例子:

        // String --> Integer
        Integer i1 = Integer.valueOf("12");//12
        // Integer --> String
        String str = i1.toString();//"12"

        // int --> Integer
        Integer i2 = 12;//这是自动装箱  还可以手动    Integer i2 = Integer.valueOf(12);
        // Integer --> int
        int val = i2;//这是自动拆箱  还可以手动     int val = i2.intValue();

        // String -->int
        int i3 = Integer.valueOf("12");//12 这是 String --> Integer 后自动拆箱 -> int
        int i4 = Integer.parseInt("12");//12  直接使用 Integer 的 static函数 更便捷。
        // int --> String
        String str2 = i3 + "";//数和String加,自动变为String
        String str3 = String.valueOf(12);//"12"
View Code

常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。

昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。
原文地址:https://www.cnblogs.com/htj10/p/12356545.html