欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

C語言

c#運(yùn)算符關(guān)鍵字is的使用

時間:2025-02-03 04:14:11 C語言 我要投稿
  • 相關(guān)推薦

c#運(yùn)算符關(guān)鍵字is的使用

  引導(dǎo)語:C語言把除了控制 語句和輸入輸出以外的幾乎所有的基本操作都作為運(yùn)算符處理,以下是小編整理的c#運(yùn)算符關(guān)鍵字is的使用,歡迎參考閱讀!

  檢查對象是否與給定類型兼容。例如,下面的代碼可以確定對象是否為 MyObject 類型的一個實(shí)例,或者對象是否為從 MyObject 派生的一個類型:

  if (obj is MyObject)

  {

  }

  如果所提供的表達(dá)式非空,并且所提供的對象可以強(qiáng)制轉(zhuǎn)換為所提供的類型而不會導(dǎo)致引發(fā)異常,則 is 表達(dá)式的計(jì)算結(jié)果將是 true。

  如果已知表達(dá)式將始終是 true 或始終是 false,則 is 關(guān)鍵字將導(dǎo)致編譯時警告,但是,通常在運(yùn)行時才計(jì)算類型兼容性。

  不能重載 is 運(yùn)算符。

  請注意,is 運(yùn)算符只考慮引用轉(zhuǎn)換、裝箱轉(zhuǎn)換和取消裝箱轉(zhuǎn)換。不考慮其他轉(zhuǎn)換,如用戶定義的轉(zhuǎn)換。

  在 is 運(yùn)算符的左側(cè)不允許使用匿名方法。lambda 表達(dá)式屬于例外。

  示例

  C#

  class Class1 {}

  class Class2 {}

  class Class3 : Class2 { }

  class IsTest

  {

    static void Test(object o)

    {

      Class1 a;

      Class2 b;

      if (o is Class1)

      {

        Console.WriteLine("o is Class1");

        a = (Class1)o;

        // Do something with "a."

      }

      else if (o is Class2)

      {

        Console.WriteLine("o is Class2");

        b = (Class2)o;

        // Do something with "b."

      }

      else

      {

        Console.WriteLine("o is neither Class1 nor Class2.");

      }

    }

    static void Main()

    {

      Class1 c1 = new Class1();

      Class2 c2 = new Class2();

      Class3 c3 = new Class3();

      Test(c1);

      Test(c2);

      Test(c3);

      Test("a string");

    }

  }

  /*

  Output:

  o is Class1

  o is Class2

  o is Class2

  o is neither Class1 nor Class2.

  */

【c#運(yùn)算符關(guān)鍵字is的使用】相關(guān)文章:

運(yùn)算符關(guān)鍵字as的使用09-25

運(yùn)算符關(guān)鍵字typeof的使用08-26

c#查詢關(guān)鍵字之into的使用07-25

c#查詢關(guān)鍵字之group子句的使用09-07

c#查詢關(guān)鍵字from 子句的用法11-07

c#查詢關(guān)鍵字where 子句的運(yùn)用10-31

c#關(guān)鍵字查詢之select 子句運(yùn)用10-06

java語言運(yùn)算符的使用10-02

Java中運(yùn)算符的使用10-17