C# 装箱和拆箱(以及 as ,is)

装箱(Boxing)是指将值类型转换为引用类型的过程

拆箱(Unboxing)是将引用类型转换回值类型的过程。

cs 复制代码
    int a = 1;
    object b = a; //装箱

    object obj = 10;
    int num = (int)obj; //拆箱


     ArrayList list= new ArrayList();

     list.Add(123);//装箱

     int i = (int)list[0];//拆箱

操作符 as is

cs 复制代码
  //  as  将对象转换成引用类型或者可控类型 如果转换不行,返回null 

  object obj = "你好";
  string str=obj as string;


  //  is  结果返回的是一个布尔值 用于判断是否是该类型

  object obj2 = "1234";
  Console.WriteLine(obj is string);
相关推荐
清水白石0085 分钟前
《精通 Python 设计模式:从入门理解到实战落地》
开发语言·python
五阿哥永琪6 分钟前
Nacos注册/配置中心
java·开发语言
无敌最俊朗@8 分钟前
Qt多线程阻塞:为何信号失效?
java·开发语言
ii_best11 分钟前
「安卓开发辅助工具按键精灵」xml全分辨率插件jsd插件脚本教程
android·xml·开发语言·编辑器·安卓
李慕婉学姐11 分钟前
【开题答辩过程】以《基于python的气象灾害数据分析与可视化系统》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
开发语言·python·数据分析
CodeCraft Studio15 分钟前
Excel处理控件Aspose.Cells教程:使用C#在Excel中创建树状图
前端·c#·excel·aspose·c# excel库·excel树状图·excel sdk
一起养小猫19 分钟前
《Java数据结构与算法》第四篇(三)二叉树遍历详解_CSDN文章
java·开发语言·数据结构
消失的旧时光-194323 分钟前
从 Android 回调到 C 接口:函数指针 + void* self 的一次彻底理解
android·c语言·开发语言
我命由我1234525 分钟前
Python Flask 开发问题:ImportError: cannot import name ‘escape‘ from ‘flask‘
服务器·开发语言·后端·python·flask·学习方法·python3.11