IS和AS的区别
IS和AS的区别???
问题点数:20、回复次数:3Top
1 楼jiezhi(风满袖)回复于 2006-03-02 15:47:09 得分 0
is 不会做类型转换动作,而as会Top
2 楼ixue(鹰,翔雪宇)回复于 2006-03-02 15:49:32 得分 0
as 运算符用于执行可兼容类型之间的转换。类似于类型转换,所不同的是,当转换失败时,as 运算符将产生空,而不是引发异常。as 运算符只执行引用转换和装箱转换。as 运算符无法执行其他转换,如用户定义的转换。
is 运算符用于检查对象的运行时类型是否与给定类型兼容。
格式:expression is type
如果满足下列两个条件,则 is 表达式计算为 true 值:
1、expression 非 null。
2、expression 可以被转换为 type。也就是说,将完成形式 (type)(expression) 的转换表达式而不引发异常。
如果已知 expression is type 表达式总是为 true 或总是为 false,则会发出编译时警告。
不能重载 is 运算符。
请注意,is 运算符只考虑引用转换、装箱转换和取消装箱转换。is 运算符不考虑其他转换(如用户定义的转换)。
Top
3 楼steedhorse(晨星)回复于 2006-03-02 15:51:06 得分 0
is是判断一下是不是某种类型,as是尝转换成某种类型。Top




