自动装箱和自动拆箱

自动装箱:指开发人员可以把一个基本数据类型直接赋给对应的包装类。

自动拆箱:指开发人员可以把一个包装类对象直接赋给对应的基本数据类型。

自动装箱和自动拆箱是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 }
View Code
原文地址:https://www.cnblogs.com/nicker/p/6242797.html