C#装箱和拆箱操作实例分析
作者:Quber 时间:2021-10-25 13:17:36
本文实例讲述了C#装箱和拆箱操作。分享给大家供大家参考,具体如下:
1. C#中的装箱
C#中的装箱就是把一个值类型隐式地转换为object类型,转换过程中采用的是值的拷贝而不是引用,这从下面的例子可以看出:
using System;
public class Test
{
public static void Main(String[] args)
{
int i = 10;
//将值类型的i装箱
//需要注意的是:这里的装箱采用的是值的拷贝
object obj = i;
//检验是否装箱成功了
if(obj is int)
{
Console.WriteLine("数据已经装箱!");
}
//我们在这里更改i的值
i = 33;
Console.WriteLine("int i现在的值是:{0}",i);
Console.WriteLine("int i装箱的值是:{0}",obj);
}
}
2. C#中的拆箱
C#中的拆箱就是把一个对象类型显式地转换为值类型,注意:要转换的类型必须和值类型是兼容的。举例如下:
int i = 10;
object obj = i;
int j = (int)obj;
在这里需要注意的是:
装箱和拆箱是非常影响程序性能的,在代码中应避免装箱和拆箱的操作。可以使用泛型来减少这样的操作。
希望本文所述对大家C#程序设计有所帮助。
标签:C#,装箱,拆箱
0
投稿
猜你喜欢
SpringIOC框架的简单实现步骤
2021-10-28 21:44:35
SpringbootJPA分页 PageRequest过时的替代方法
2022-03-10 11:53:13
Java8时间接口LocalDateTime详细用法
2023-11-25 09:56:49
java 遍历request中的所有表单数据的实例代码
2021-10-21 11:19:26
c# 复写Equals方法的实现
2023-06-09 01:35:35
在Maven下代理服务器设定的方式
2023-10-15 02:17:13
Java super关键字的使用详解
2021-11-30 13:40:43
Java数据结构与算法之稀疏数组与队列深入理解
2022-05-31 06:33:11
C#使用ICSharpCode.SharpZipLib.dll进行文件的压缩与解压功能
2022-01-09 15:30:45
java中Locks的使用详解
2023-11-29 00:18:38
为什么mybatis中的SqlSession一定要关闭
2022-02-24 07:57:11
C语言 超详细总结讲解二叉树的概念与使用
2023-11-08 20:24:56
JavaWeb登录界面登录失败在同一页面进行提示的解决
2023-11-26 15:51:34
基于maven的三种packaging方式
2021-09-30 22:15:05
Java开发之内部类对象的创建及hook机制分析
2023-11-27 04:45:20
C#构造函数在基类和父类中的执行顺序
2021-10-24 06:58:03
基于rocketmq的有序消费模式和并发消费模式的区别说明
2021-10-29 08:41:02
Springboot配置security basic path无效解决方案
2023-07-12 21:42:50
java实现列表、集合与数组之间转化的方法
2023-11-29 10:17:38
浅析c# 线程同步
2022-09-19 18:43:03