下面是一些示例代码来说明 as 和 is 的使用:
- // 使用as关键字进行类型转换
- object obj = "Hello";
- string str = obj as string;
- if (str != null)
- {
- Console.WriteLine("转换成功:" + str);
- }
- else
- {
- Console.WriteLine("转换失败");
- }
-
- // 使用is关键字进行类型判断
- object obj = "Hello";
- if (obj is string)
- {
- string str = (string)obj;
- Console.WriteLine("是字符串:" + str);
- }
- else
- {
- Console.WriteLine("不是字符串");
- }
注意,as 关键字在转换失败时会返回 null ,而 is 关键字只返回 true 或 false 。另外,使用 as 关键字进行转换时,需要注意目标类型是否兼容,否则会得到 null 值。