C语言 百分网手机站

运算符关键字as的使用

时间:2020-10-06 09:08:09 C语言 我要投稿

运算符关键字as的使用

  引导语:运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。以下是小编整理的运算符关键字as的使用,欢迎参考阅读!

  as 运算符用于在兼容的.引用类型之间执行某些类型的转换。例如:

  C#

  class csrefKeywordsOperators

  {

  class Base

  {

  public override string ToString()

  {

  return "Base";

  }

  }

  class Derived : Base

  { }

  class Program

  {

  static void Main()

  {

   Derived d = new Derived();

   Base b = d as Base;

   if (b != null)

   {

   Console.WriteLine(b.ToString());

   }

  }

  }

  }

  备注

  as 运算符类似于强制转换操作。但是,如果无法进行转换,则 as 返回 null 而非引发异常。请看下面的表达式:

  expression as type

  它等效于以下表达式,但只计算一次 expression。

  expression is type ? (type)expression : (type)null

  注意,as 运算符只执行引用转换和装箱转换。as 运算符无法执行其他转换,如用户定义的转换,这类转换应使用强制转换表达式来执行。

  示例

  C#

  class ClassA { }

  class ClassB { }

  class MainClass

  {

  static void Main()

  {

  object[] objArray = new object[6];

  objArray[0] = new ClassA();

  objArray[1] = new ClassB();

  objArray[2] = "hello";

  objArray[3] = 123;

  objArray[4] = 123.4;

  objArray[5] = null;

  for (int i = 0; i < objArray.Length; ++i)

  {

  string s = objArray[i] as string;

  Console.Write("{0}:", i);

  if (s != null)

  {

   Console.WriteLine("'" + s + "'");

  }

  else

  {

   Console.WriteLine("not a string");

  }

  }

  }

  }

  /*

  Output:

  0:not a string

  1:not a string

  2:'hello'

  3:not a string

  4:not a string

  5:not a string

  */

【运算符关键字as的使用】相关文章:

1.运算符关键字typeof的使用

2.c#运算符关键字is的使用

3.Java中运算符的使用

4.java的import关键字的使用

5.C语言关键字static的使用

6.C语言关键字const的使用

7.C语言register关键字的使用

8.C语言的关键字enum的使用