is和as关键字
c# 中 is和as 操作符是用来进行强制类型转换的
is : 检查一个对象是否兼容于其他指定的类型,并返回一个Bool值,永远不会抛出异常
1 2 3 4 5 6 7 8 9 10 11 12 | object o = new object (); if (o is Label) { Label lb = (Label)o; Response.Write( "类型转换成功" ); } else { Response.Write( "类型转换失败" ); } |
as:与强制类型转换是一样的,但是永远不会抛出异常,即如果转换不成功,会返回null
1 2 3 4 5 6 7 8 9 10 11 12 | object o = new object (); Label lb = o as Label; if (lb == null ) { Response.Write( "类型转换失败" ); } else { Response.Write( "类型转换成功" ); } |
在做项目的时候,我们可以将is和as结合起来使用,由is负责把关检查,as负责转换类型
1 2 3 4 5 6 7 | foreach (Control item in this .Controls) { if (item is Cards) { Cards card = item as Cards; } } |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步