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"
常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。
昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步