包装类(Wrapper)的分类:
1.针对八种基本数据类型相应的引用类型--包装类
2.有了类的特点,就可以调用类中的方法

*黄色框内都是number的子类,number是Ojbect子类,黑色框中的包装类是独立的,Ojbect子类
//boolean-Boolean-父类Object //char-Character-父类Object
//byte-Byte-父类number-父类Object //int-Integer-父类number-父类Object //long-Long-父类number-父类Object //float-Float-父类number-父类Object //double-Double-父类number-父类Object //short-Short-父类number-父类Object



包装类和基本数据类型的转换:
以int和Integer演示:
1)jdk5前的手动装箱和拆箱方式:装箱:基本类型->包装类型,反之,拆箱
2)jdk5以后(含jdk5)的自动装箱和拆箱方式
3)自动装箱底层调用的是valueOf方法,比如Integer.valueOf()
1package com.Wrapper_; 2 3public class Integer01 { 4 public static void main(String[] args) { 5 //演示int-Integer的装箱和拆箱 6 //jdk5以前是手动装箱和拆箱 7 //手动装箱 8 int n1 = 100; 9 Integer integer = new Integer(n1); 10 //或者 11 Integer integer1 = Integer.valueOf(n1); 12 //手动拆箱 13 int i = integer.intValue(); 14 15 //jdk5后(包括jdk5),就可以自动装箱和自动拆箱了 16 int n2 = 200; 17 //自动装箱 18 Integer integer2 = n2;//底层使用的是 Integer.valueOf(n1); 19 //自动拆箱 20 int n3 = integer2;//底层仍然使用的是integer.intValue(); 21 } 22}
*其他的(Long,Byte,Float等包装类)用法一样
包装类型和String类型的转换:
演示以Integer和String类型的转换:
1package com.Wrapper_; 2 3public class WrapperVSString { 4 public static void main(String[] args) { 5 //包装类转成String,以Integer为例 6 Integer i = 100;//自动装箱 7 //方式1 8 String str1 = i + "";//int类型和字符串拼接自动变为String类型,这里对i的类型并没有影响 9 //方式2 10 String str2 = i.toString();//直接用包装类中含有的方法toString()转换 11 //方式3 12 String str3 = String.valueOf(i); 13 14 //把String转成包装类Integer 15 String str4 = "12345"; 16 //方式1 17 int i1 = Integer.parseInt(str4);//自动装箱,也可以Integer i1 = Integer.parseInt(str4),会进行自动转换 18 //方式2 19 Integer i3 = new Integer(str4); 20 21 } 22}
包装类型的常用方法(以Integer和Character类为例):

