初步学习“C#中is,as用法”
2009-12-16 22:36
330 查看
is : 检查一个对象是否兼容于其他指定的类型,并返回一个Bool值,永远不会抛出异常
object o = new object();
if (o is Label)
{
Label lb = (Label)o;
Response.Write("类型转换成功");
}
else
{
Response.Write("类型转换失败");
}
在上面的代码,CLR实际上会检查两次对象的类型,is操作符先核实一次,如果o兼容于Lable,那么在(Label)o时会再次核实一次,效率比较低,不建议使用
as:与强制类型转换是一样的,但是永远不会抛出异常,即如果转换不成功,会返回null
object o = new object();
Label lb = o as Label;
if (lb == null)
{
Response.Write("类型转换失败");
}
else
{
Response.Write("类型转换成功");
}
object o = new object();
if (o is Label)
{
Label lb = (Label)o;
Response.Write("类型转换成功");
}
else
{
Response.Write("类型转换失败");
}
在上面的代码,CLR实际上会检查两次对象的类型,is操作符先核实一次,如果o兼容于Lable,那么在(Label)o时会再次核实一次,效率比较低,不建议使用
as:与强制类型转换是一样的,但是永远不会抛出异常,即如果转换不成功,会返回null
object o = new object();
Label lb = o as Label;
if (lb == null)
{
Response.Write("类型转换失败");
}
else
{
Response.Write("类型转换成功");
}
相关文章推荐
- 初步学习“C#中is,as用法”(转载)
- 初步学习“C#中is,as用法”
- C#中as和is的用法
- C#中as与is的用法
- C#中As 及Is 的用法
- 初步学习“C#中构造函数和析构函数的用法”
- C# as is的用法
- C#中As 及Is 的用法
- C#中as与is的用法
- C#中As 及Is 的用法
- C#中is和as用法实例分析
- c#之is和as的区别用法
- C#中AS和IS关键字的用法
- C#中As 及Is 的用法
- C#中as与is的用法
- C#、.Net代码精简优化(空操作符(??)、as、string.IsNullOrEmpty() 、 string.IsNullOrWhiteSpace()、string.Equals()、System.IO.Path 的用法)
- C#中As 及Is 的用法
- C#中as和is的用法
- C#学习笔记 is 和 as
- C#中as与is的用法(收藏)