发布网友 发布时间:2022-04-27 13:47
共3个回答
热心网友 时间:2022-04-27 15:16
is是判断类型,,,as是转换类型比如判断a是不是b 。。。 if(a is b) 是的返回true,,否则返回false把a类型转换成b类型 a as b ...这样转换比较安全,,应该转换失败不会出现异常,而是返回NULL热心网友 时间:2022-04-27 16:34
个人对 is 和 as 的理解。如果有什么问题,大家可以予以更正。谢谢。is 和 as的使用范围都是引用类型中。if(!(stu is Student))//如果对象stu不是Student类型,则转换。{ Student s= stu as Student;可以使用强制转换。但使用as转换时,可以减少不必要的异常。}热心网友 时间:2022-04-27 18:09
a is b,中文的意思就是“a是b吗”,所以表达式返回的是一个布尔值。比如int a=3;bool b = a is int;所以这个时候的b的值就会是true a as b,中文的意思就是“把a当做b”,所以表达式返回的是被转换类型后的a。比如int a=3;object b = a as obejct;那么这个时候的b就是a转换成object类型后的值。