自动装箱:指开发人员可以把一个基本数据类型直接赋给对应的包装类。
自动拆箱:指开发人员可以把一个包装类对象直接赋给对应的基本数据类型。
自动装箱和自动拆箱是JDK1.5的时候引入的。
一些类描述java中八种基本数据类型数据
基本数据类型 包装类型
byte Byte
short Short
int Integer
long Long
float Float
double Double
boolean Boolean
char Character
代码示例如下:
1 public class Demo5 { 2 3 public static void main(String[] args) { 4 String str = "12"; 5 6 //字符串转换成int类型数据。 可以把字符串转换成对应的数字 7 int i = Integer.parseInt(str); 8 System.out.println(i+1); 9 10 //把数字转换成字符串 11 System.out.println("把整数转换成对应 的字符串:"+Integer.toString(i)); 12 13 //把整数转换成对应的进制形式 14 System.out.println("10的二进制:"+ Integer.toBinaryString(10)); 15 System.out.println("10的二进制:"+ Integer.toBinaryString(10)); 16 System.out.println("10的十六进制:"+ Integer.toHexString(10)); 17 18 19 //可以把字符串当成对应的进行数据帮你转换 20 String data = "10"; 21 int a = Integer.parseInt(data, 2); 22 System.out.println("a="+a); 23 24 25 //集合: 集合是可以存储任意对象类型数据的容器。 26 ArrayList list = new ArrayList(); 27 list.add(1); 28 list.add(2); 29 list.add(3); 30 31 //自动装箱: 自动把java的基本数据类型数据转换成对象类型数据。 32 int temp = 10; //基本数据类型 33 Integer b =temp; //把a存储的值赋予给b变量。 34 35 36 //自动拆箱: 把引用类型的数据转换成基本类型的数据 37 Integer c = new Integer(13); 38 int d = c; // 39 System.out.println(d); 40 41 42 43 //引用的数据类型 44 Integer e = 128; 45 Integer f = 128; 46 System.out.println("同一个对象吗?"+(e==f)); // Integer类内部维护 了缓冲数组,该缓冲数组存储的-128~127 这些数据在一个数组中。如果你获取的数据是落入到这个范围之内的,那么就直接从该缓冲区中获取对应的数据。 47 48 49 } 50 51 }