zoukankan      html  css  js  c++  java
  • c#中的is和as运算符

    is运算符

    is运算符可以检查对象是否与特定的类型兼容。is运算符用来检查对象(变量)是否属于某数据类型(如int、string、bool、double、class等),可在安全类型转换之前进行判断之用。

    例如,要检查变量是否与object类型兼容: 注意:“兼容”表示对象是该类型,或者派生于该类型。

    int i = 10;   
    if (i is object)   
    {   
     Console.WriteLine("i is an object");   
      
    }  
    int i = 10;  
    if (i is object)  
    {  
     Console.WriteLine("i is an object");  
      

    int和从object继承而来的其他C#数据类型一样,表达式i is object将得到true,并显示信息。


    as运算符

    as运算符用于执行引用类型的显式类型转换。如果要转换的类型与指定的类型兼容,转换就会成功进行;如果类型不兼容,as运算符就会返回值null。如下面的代码所示,如果object引用不指向string实例,把object引用转换为string就会返回null:

    object o1 = "Some String";   
    object o2 = 5;   
    string s1 = o1 as string; //s1 = "Some String"   
    string s2 = o2 as string; //s2 = null  
    object o1 = "Some String";  
    object o2 = 5;  
    string s1 = o1 as string; //s1 = "Some String"  
    string s2 = o2 as string; //s2 = null  

    as运算符允许在一步中进行安全的类型转换,不需要先使用is运算符测试类型,再执行   转换

  • 相关阅读:
    [CLYZ2017]day8
    [CLYZ2017]day12
    [bzoj1503][NOI2004]郁闷的出纳员
    [CLYZ2017]day18
    [CLYZ2017]day11
    [CLYZ2017]day17
    在DLL中获取服务器路径
    SPSecurity.RunWithElevatedPrivileges 拒绝访问
    prototype1.4.0(转载)
    删除多表数据
  • 原文地址:https://www.cnblogs.com/liuyubin0629/p/7105344.html
Copyright © 2011-2022 走看看