首页
网页制作
网络编程
脚本专栏
数据库
网站运营
网络安全
平面设计
CMS教程
搜索
建站极客
网络编程
ASP.NET
正文
不能忽略c#中的using和as操作符的用处
所属分类:
网络编程
/
ASP.NET
阅读数: 1921
收藏 0
赞 0
分享
是不是很多人不用c#中的using和as操作符?甚至不知道?
其实这2个操作符在小处非常有用。
1、using
按照msdn的解释
using 语句定义一个范围,在此范围的末尾将处理对象。
举例:
class TestUsing:IDisposable
{
public void Dispose()
{
Console.WriteLine("Dispose");
}
public void Method()
{
Console.WriteLine("Do a method");
}
}
调用这个类:
using(TestUsing tu=new TestUsing())
{
tu.Method();
}
可以看到先后输出了Do a method和Dispose。
备注:实例化的对象必须实现 System.IDisposable 接口
2、as
msdn这么说:
as 运算符用于执行可兼容类型之间的转换。
as 运算符类似于类型转换,所不同的是,当转换失败时,as 运算符将产生空,而不是引发异常。在形式上,这种形式的表达式:
expression as type
等效于:
expression is type ? (type)expression : (type)null
只是 expression 只被计算一次。
请注意,as 运算符只执行引用转换和装箱转换。as 运算符无法执行其他转换,如用户定义的转换,这类转换应使用 cast 表达式来代替其执行。
举例:
object [] arr=new object[2];
arr[0]=123;
arr[1]="test";
foreach(object o in arr)
{
string s=(string)o;
Console.WriteLine(s);
}
这样的代码在转换类型失败的时候引发异常,代码修改成:
object [] arr=new object[2];
arr[0]=123;
arr[1]="test";
for(int i=0;i<arr.Length;i++)
{
string s=arr[i] as string;
if(s!=null)Console.WriteLine(i+":"+s);
} 可以看到输出了1:test,虽然arr[0]处转换失败但是没有引发异常而是返回了null
备注:as必须和引用类型一起使用(int等值类型不能使用)
更多精彩内容
其他人还在看
ASP.Net 之Datalist删除功能详解附代码
ASP.Net 之Datalist删除功能详解附代码,需要的朋友可以参考一下
评论 0
收藏 0
赞 0
分享
ASP.NET(C#)验证数字的两种方法
ASP.NET(C#)验证数字的两种方法,需要的朋友可以参考一下
评论 0
收藏 0
赞 0
分享
此页的状态信息无效,可能已损坏 的处理办法及原因分析
此页的状态信息无效,可能已损坏 的处理办法及原因分析,需要的朋友可以参考一下
评论 0
收藏 0
赞 0
分享
MultiLine 换行后实现读取不换行的具体思路
输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的,下面与大家分享下具体的解决方法
评论 0
收藏 0
赞 0
分享
swfupload ajax无刷新上传图片实例代码
在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点。这里用到的是一个插件swfupload实现无刷新上传图片,感兴趣的朋友可以参考下哈
评论 0
收藏 0
赞 0
分享
静态gb2312编码在项目传值出现中文乱码现象
参考的美工静态页面是gb2312格式的,当此编码拿到项目中后,utf-8编码的系统,加载页面时,会出现样式问题,比如不能正常居中等
评论 0
收藏 0
赞 0
分享
System.Timers.Timer定时执行程序示例代码
如果是某个逻辑功能的定时,可以将code放到逻辑功能的类的静态构造函数中,在该逻辑类第一次执行时,静态构造函数会被调用,则定时自然启动
评论 0
收藏 0
赞 0
分享
分享下Asp.Net面试题目及答案集合
这篇文章主要是总结asp.net开发人员在面试过程中常遇到的一些问题小结,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
给自定义Web控件添加事件(前后台代码)
给自定义控件(Web Control)添加事件具体前后台代码如下,感兴趣的朋友可以参考下哈
评论 0
收藏 0
赞 0
分享
ASP.NET过滤器的应用方法介绍
ASP.NET过滤器的应用方法介绍,需要的朋友可以参考一下
评论 0
收藏 0
赞 0
分享
查看更多
网络赚钱
更多
卡盟是怎么赚钱的?卡盟各个盈利模式介绍
揭秘朋友圈面膜:足不出户 国内生产俩月造出国际大牌
从世界杯观赛看,“移动视频”就是个伪命题
怎样利用网络赚钱 网络赚钱有哪些方法
潘定国的粉丝经济学的重点:移动互联网核心是以人为本
个人建站赚钱方法有哪些?5种常见方法汇总
站长故事
更多
当iPhone6被上升成人民内部矛盾
美团副总裁杨俊:做O2O的4个关键节点 会高效率地花钱
为何说魅族的小米路线注定走不通?
为什么阿里巴巴要在美国上市不在国内上市?
揭晓互联网三大巨头(百度,腾讯,阿里巴巴)和草根站长的往来
写给那些曾经想转型却找不到方向的的站长