“ as”运算符在兼容类型之间执行转换。就像强制转换操作一样,它仅执行引用转换,可为空的转换和装箱转换。as运算符不能执行其他转换,例如用户定义的转换,而应使用强制转换表达式来执行。
以下是显示在C#中使用as操作的示例。这里用作转换。
string s = obj[i] as string;
尝试运行以下代码以在C#中与“ as”运算符一起使用。
using System; public class Demo { public static void Main() { object[] obj = new object[2]; obj[0] = "jack"; obj[1] = 32; for (int i = 0; i < obj.Length; ++i) { string s = obj[i] as string; Console.Write("{0}: ", i); if (s != null) Console.WriteLine("'" + s + "'"); else Console.WriteLine("这不是字符串!"); } Console.ReadKey(); } }
输出结果
0: 'jack' 1: 这不是字符串!