java自动装箱和拆箱

转载 2016年05月31日 15:50:53

自动装箱:将基本数据类型转为包装器类型

当我们创建一个类的对象实例的时候,例如:

Integer i=new Integer(100); 在jdk1.5之后  Integer i=100;就可以啦!这就是装箱。在装箱的时候调用的是Integer的ValueOf(int)方法,在拆箱的时候调用的是intValue方法

基本数据类型对应的包装器类型:

int(4字节) Integer
byte(1字节) Byte
short(2字节) Short
long(8字节) Long
float(4字节) Float
double(8字节) Double
char(2字节) Character
boolean(未定) Boolean

拆箱:将包装器类型转为基本数据类型

Integer i =100;//装箱
int a=i;//拆箱</span>
valueof源代码
如果i在-127<i<128 系统会访问Cache
public class Test {
	public static void main(String[] args) {
		Integer a=100;
		Integer b=100;
		System.out.println(a==b);
		Integer c=300;
		Integer d=300;
		System.out.println(c==d);
	}
}
</pre><pre name="code" class="java">true
false


   public static Integer valueOf(int i) {
        if (i >= IntegerCache.low && i <= IntegerCache.high)
            return IntegerCache.cache[i + (-IntegerCache.low)];
        return new Integer(i);
    }
intvalue源代码
 public int intValue() {
        return value;
    }







java自动拆装箱总结

java中有8中基本的数据类型,这八种基本的数据类型都有对应的封装类型,下面是对应关系:int——Integerfloat——Floatdouble——Doublebyte——Bytelong——Lo...
  • u013189927
  • u013189927
  • 2016年05月09日 16:43
  • 2214

详解Java的自动装箱与拆箱(Autoboxing and unboxing)

一、什么是自动装箱拆箱 很简单,下面两句代码就可以看到装箱和拆箱过程//自动装箱 Integer total = 99;//自定拆箱 int totalprim = total;简单一点说,装箱就是...
  • hp910315
  • hp910315
  • 2015年09月22日 15:27
  • 4788

Java学习笔记之自动装箱与拆箱

更多博文可参考我的个人独立博客:贱贱的梦想 什么是自动装箱与拆箱自动装箱就是Java自动将原始类型值转换成对应的对象,比如将int的变量转换成Integer对象,这个过程叫做装箱,反之将Intege...
  • GongchuangSu
  • GongchuangSu
  • 2016年05月28日 22:28
  • 1103

Java自动装箱和自动拆箱

Java自动装箱和拆箱
  • liamao16
  • liamao16
  • 2016年04月27日 08:59
  • 818

Java学习之自动装箱和自动拆箱源码分析

自动装箱(boxing)和自动拆箱(unboxing) 首先了解下Java的四类八种基本数据类型 基本类型 占用空间(Byte) 表示范围 包装器类型 ...
  • u011726984
  • u011726984
  • 2015年08月27日 18:56
  • 7304

Java的装箱和封箱

Java的自动装箱和封箱虽然看似比较简单,但有些需要注意的地方。 在赋值的时候,分两种情况。 1.将基本类型赋值给基本类型的代理类型。 如Integer i = 3; 这是一个自动装箱的过程。...
  • liutang090510
  • liutang090510
  • 2016年04月27日 12:16
  • 875

Java 自动装箱和自动拆箱注意的问题

自动装箱和自动拆箱不是什么复杂的技术,自动装箱就是基本类型(int,long)数据可以先自动转换为对应的封装类(Integer,Long)对象,而自动拆箱相反。 在本文中,笔者向大家介绍下Java中...
  • chenchaofuck1
  • chenchaofuck1
  • 2016年06月15日 17:00
  • 2313

JAVA比较陷阱——易错点(包含自动装箱)

详细介绍了比较操作的实质过程,以及比较过程中常见的错误。
  • fanxiaobin577328725
  • fanxiaobin577328725
  • 2016年09月04日 22:00
  • 1220

Java进阶之自动拆箱与自动装箱

自动装箱:把基本类型用它们对应的包装类包装起来,使它们具有对象的特质,可以调用所对应的包装类所定义的方法,比如toString()等。 自动拆箱:跟自动装箱的方向相反,将Integer及Double...
  • qq_31655965
  • qq_31655965
  • 2016年06月06日 18:04
  • 1499

Java_自动装箱_自动拆箱和String常量池(享员模式应用)

本博文为子墨原创,转载请注明出处! http://blog.csdn.net/zimo2013/article/details/8932855 1.自动装箱与拆箱的理解    自动装箱:基本...
  • strawberry2013
  • strawberry2013
  • 2013年05月15日 23:06
  • 2325
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java自动装箱和拆箱
举报原因:
原因补充:

(最多只允许输入30个字)