Java_Number(装箱和拆箱)

所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类Number子类

  • 装箱: 自动将基本数据类型装换为包装器类型
  • 拆箱: 自动将包装器类型转换为基本数据类型
 int a= 1;
 Integer b = a;  // 自动装箱
 int c = b;  // 自动拆箱

 int a= 2;
 Integer b = new Integer(a);  // 手动装箱
 int c = b.intValue();  // 手动拆箱



需要注意:

-128127 之间的值,被装箱后,会被放在内存中重用,超出该值,系统会重新 ==new== 一个对象

Integer a = 10;
Integer b = 10;
System.out.println( a==b );  // true
System.out.println( a.equals(b) ); // true
Integer a = 128;  // 相当于:Integer.valueOf(128);
integer b = 128;
System.out.println( a==b ); //false
System.out.println( a.equals(b) ); //true

猜你喜欢

转载自www.cnblogs.com/zeo-to-one/p/9351515.html