C#装箱和拆箱。
2024-08-22 04:29:23
装箱:值类型-->引用类型。
拆箱:引用类型-->值类型
装箱:把值类型拷贝一份到堆里。反之拆箱。
具有父子关系 是拆装箱的条件之一。
所以:
class Program
{
static void Main(string[] args)
{
//不是装拆箱 (类型转换)
int n = ;
string s = Convert.ToString(n); //根据值在堆里创建,不是复制
int m = int.Parse(s);
//是装拆箱
int x = ;
object o = x;
int y = (int)o;
}
}
装的什么类型,拆的时候也必须是对应类型。
使用方法时看是否装拆箱:看需要的参数和传入的参数的集体类型。
使用泛型集合避免装拆箱。
最新文章
- 2014 summer training总结篇
- [DPDK][转]DPDK编程开发(4)—lcore
- sc delete 服务器名提示“指定的服务已经标记为删除”
- clients(PV操作共享内核内存进行输入输出分屏) - server(进程间通信)模型实现
- LeetCode题解——ZigZag Conversion
- html-----012---颜色的改变
- java如何LOG打印出日志信息
- Hadoop(三)手把手教你搭建Hadoop全分布式集群
- P2757 导弹的召唤(数据加强)
- css渲染(一) 字体和文本
- Appium疑难杂症
- 笔记:Spring Cloud Hystrix 异常处理、缓存和请求合并
- java keytool
- 第六章——决策树(Decision Trees)
- WEB框架本质和第一个Django实例
- Android开发 - 设置DialogFragment全屏显示
- 最大的矩形面积 Maximal Rectangle
- vsftp 虚拟用户+MySQL认证独立家目录
- python + opencv: kalman 跟踪
- 基于datax的数据同步平台
热门文章
- springboot的拦截器Interceptor的性质
- input type='file'文件上传自定义样式
- vue computed计算属性和watch监听属性解疑答惑
- springboot 不同环境切换不同的配置文件
- Activity的task任务栈
- 解决Ubuntu自带编译器不好使问题
- mysql的一点小错误
- 补发————DOM与BOM
- yield(),wait(),sleep(),join()
- Objective-C iOS纯代码布局 一堆代码可以放这里!