装箱(boxing)和拆箱(unboxing)

1. 装箱(boxing)

  用于把一个值类型转换为引用类型

int i = 20;
object o = i; //隐式转换

 

2. 拆箱(unboxing)

  将以前装箱的值类型转换回引用类型

 

int i = 20;
object o = i;
int j = (int)o;

 

 

时间: 2024-08-03 08:27:29

装箱(boxing)和拆箱(unboxing)的相关文章

浅析自动装箱、自动拆箱

浅析自动装箱.自动拆箱 我们知道,在java中有基本类型和类类型,基本类型有:char.byte.short.int.double.float.long.boolean这8种,在需要将基本类型打包成对象来进行操作的时候,这时,就用到了打包这一操作,该操作的自动行为就叫做自动装箱.自动拆箱. package demo; public class IntegerDemo { public static void main(String[] args) { int data1=10; int data

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

自动装箱(boxing)和自动拆箱(unboxing) 首先了解下Java的四类八种基本数据类型 基本类型 占用空间(Byte) 表示范围 包装器类型 boolean 1/8 true|false Boolean char 2 -128~127 Character byte 1 -128~127 Byte short 2 -2ˆ15~2ˆ15-1 Short int 4 -2ˆ31~2ˆ31-1 Integer long 8 -2ˆ63~2ˆ63-1 Long float 4 -3.403E38

jdk1.5新特性4之自动装箱和自动拆箱与享元模式

  一 基本概念 1 装箱 把基本类型用它们相应的引用类型包装起来,使其具有对象的性质.如int-->Integer,float-->Float. 自动装箱 Integer a = 100,编译器调用的是static Integer valueOf(int i)                2 拆箱 和装箱相反,将引用类型的对象简化成值类型的数据 自动拆箱 int b = new Integer(100); int c = a +2;   二 是否相等 例一 Integer a = new

C#语法学习装箱(box)和拆箱(unbox)

/* * Created by SharpDevelop. * User: Administrator * Date: 2008/9/4 * Time: 上午 12:10 * */ using System; class Test { static void Main() { int i=123;//第一次裝箱 object o=i; i=456; //這里由於使用了+號也就會調用字符串的 //String.Concat(Object,Object,Object); //這也就讓下面的都需要轉換

C#的装箱和拆箱

到目前为止,我们为大家讲解了有关C#语言中的值类型和引用类型数据. 这一节我们来了解一下C#语言类型系统提出的一个核心概念:装箱(boxing)和拆箱(unboxing).装箱和拆箱机制使得在C#类型系统中,任何值类型.引用类型和object(对象)类型之间进行转换,我们称这种转化为绑定连接. 简单地说,有了装箱和拆箱的概念,对任何类型的值来说最终我们都可以看作是object类型. 4.3.1 装箱转换 4.3.2 拆箱转换

《Effective C#》之减少装箱和拆箱

为了便于文章的开展,首先介绍装箱(Boxing)和拆箱(Unboxing)这两个名词 ..Net的类型分为两种,一种是值类型,另一种是引用类型.这两个类型的本质 区别,值类型数据是分配在栈中,而引用类型数据分配在堆上.那么如果要把一 个值类型数据放到堆上,就需要装箱操作;反之,把一个放在堆上的值类型数据 取出来,则需要进行拆箱操作. 例如,对于如下简单的装箱和拆箱操作 语句. int i = 123; object obj = i;//Boxing if( obj is int ) int j

Java 性能要点:自动装箱/ 拆箱 (Autoboxing / Unboxing)

[编者按]本文作者为 Ali Kemal TASCI,最早于2016年4月9日发布于DZONE社区.文章主要介绍通过改进 Java 1.5 就已存在的骨灰级特性大幅度提高应用性能. 本文系 OneAPM 工程师编译呈现,以下为正文. 如果我告诉你:"只要修改一个字符,下面这段代码的运行速度就能提高5倍.",你觉得可能么? long t = System.currentTimeMillis(); Long sum = 0L;for (long i = 0; i < Integer.

Java JDK之自动装箱和拆箱

基本数据(Primitive)类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能.虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用. autoboxing和unboxing 在Java中,所有要处理的东西几乎都是对象 (Object),例如之前所使用的Scanner是对象,字符串(String)也是对象,之后还会看到更多的对象.然而基本(Primitive)数据类型不是对象,也就是您

JAVA 入坑教程 | 章节九 详解java的装箱和拆箱

简单点,代码的方式简单点,装逼的方式请省略,我们又不是演员,别设计那些情节 什么是装箱?什么是拆箱?代码如何展示? 装箱过程是怎样的?拆箱过程是怎样的? 有问题可加入安卓QQ群: 246231638 装箱和拆箱的概念 简单点,代码的方式简单点,装逼的方式请省略,我们又不是演员,别设计那些情节: //自动装箱 Integer total = 9999; //自动拆箱 int totalprim = total; 装箱:就是自动将基本数据类型转换为包装器类型: 拆箱:就是自动将包装器类型转换为基本数