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);
相关推荐
XH华3 分钟前
C语言深度解剖:第一章关键字(一)
c语言·开发语言
数据知道7 分钟前
Go基础:用Go语言操作redis详解
开发语言·数据库·redis·golang·go语言
_extraordinary_28 分钟前
Java Servlet(三)--- 写一个简单的网站,表白墙程序,登录功能的实现
java·开发语言·servlet
无敌最俊朗@31 分钟前
Qt 按钮点击事件全链路解析:从系统驱动到槽函数
开发语言·qt·计算机外设
gopher95111 小时前
go中的切片
开发语言·golang
lly2024061 小时前
Vue.js 自定义指令
开发语言
csdddn2 小时前
php 8.4.7 更新日志
开发语言·php
掘根2 小时前
【Qt】多线程
java·开发语言·qt
egoist20232 小时前
[linux仓库]图解System V共享内存:从shmget到内存映射的完整指南
linux·开发语言·共享内存·system v
兰亭妙微3 小时前
兰亭妙微QT软件开发与UI设计协同:如何避免设计与实现脱节?
开发语言·qt·ui