zoukankan      html  css  js  c++  java
  • as 运算符

    as 运算符类似于强制转换操作。但是,如果无法进行转换,则 as 返回 null 而非引发异常。

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

    expression as type
    等效于(但只计算一次 expression)
     
    expression is type ? (type)expression : (type)null

    as 运算符用于在兼容的引用类型之间执行转换。例如:
    // cs_keyword_as.cs
    // The as operator.
    using System;
    class Class1
    {
    }

    class Class2
    {
    }

    class MainClass
    {
        static void Main()
        {
            object[] objArray = new object[6];
            objArray[0] = new Class1();
            objArray[1] = new Class2();
            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");
                }
            }
        }
    }
    //=============================================================//
    0:not a string
    1:not a string
    2:'hello'
    3:not a string
    4:not a string
    5:not a string

  • 相关阅读:
    多重共性和VIF检验
    类和对象
    哈希桶
    第9章 硬件抽象层:HAL
    第10章 嵌入式Linux的调试技术
    第8章 让开发板发出声音:蜂鸣器驱动
    第7章 LED将为我闪烁:控制发光二极管
    第6章 第一个Linux驱动程序:统计单词个数
    第5章 搭建S3C6410开发板的测试环境
    第四章:源代码的下载与编译
  • 原文地址:https://www.cnblogs.com/rohelm/p/2384109.html
Copyright © 2011-2022 走看看