zoukankan      html  css  js  c++  java
  • AS,不抛异常的引用类型之间的转换

    用于在兼容的引用类型之间执行转换。例如:

    string s = someObject as string;

    1if (s != null)
    2{
    3    // someObject is a string.
    4}

    5
    备注
    as 运算符类似于强制转换,所不同的是,当转换失败时,运算符将产生空,而不是引发异常。更严格地说,这种形式的表达式
    1expression as type
    2
    等效于
    1expression is type ? (type)expression : (type)null
    2
    示例:
     1// cs_keyword_as.cs
     2// The as operator.
     3using System;
     4class Class1
     5{
     6}

     7
     8class Class2
     9{
    10}

    11
    12class MainClass
    13{
    14    static void Main()
    15    {
    16        object[] objArray = new object[6];
    17        objArray[0= new Class1();
    18        objArray[1= new Class2();
    19        objArray[2= "hello";
    20        objArray[3= 123;
    21        objArray[4= 123.4;
    22        objArray[5= null;
    23
    24        for (int i = 0; i < objArray.Length; ++i)
    25        {
    26            string s = objArray[i] as string;
    27            Console.Write("{0}:", i);
    28            if (s != null)
    29            {
    30                Console.WriteLine("'" + s + "'");
    31            }

    32            else
    33            {
    34                Console.WriteLine("not a string");
    35            }

    36        }

    37    }

    38}

    39
    输出:
    10:not a string
    21:not a string
    32:'hello'
    43:not a string
    54:not a string
    65:not a string
    7
  • 相关阅读:
    Mybatis基础配置及增删查改操作
    SpringMVC注解方式与文件上传
    SpringMVC的基础配置及视图定位
    Spring AOP面向切面编程
    Spring注入属性、对象
    Spring的配置及jar包下载
    多线程
    集合框架
    I/O————流
    I/O————对象流
  • 原文地址:https://www.cnblogs.com/maozhh/p/907954.html
Copyright © 2011-2022 走看看