zoukankan      html  css  js  c++  java
  • is操作符和as操作符

    1、is操作符验证基础类型

      public static void Save(object data)
            {
                if(data is Person)
                {
                    Person person = (Person)data;
                    Console.WriteLine("名字是"+person.Name);
                }
                else if(data==null)
                {
                    throw new ArgumentException(nameof(data));
                }
            }

    上面代码验证了data的基础类型是否是Person,只有是才会打印名字。

    2、使用is操作符进行模式匹配

    执行检查,若结果为true就同时将结果赋给新变量

     public static void Save(object data)
            {
                if(data is Person person)
                {
                    Console.WriteLine("名字是"+p.Name);
                }
                else if(data==null)
                {
                    throw new ArgumentException(nameof(data));
                }
            }

    3、使用as操作符进行转换

    as操作符会尝试将对象转换为特定数据类型,若不能转换则会返回null。

      public static void Print(Chinese chinese)
            {
                Person p = chinese as Person;
                Console.WriteLine(p.Name);
            }
  • 相关阅读:
    终于回来了&&邮递员送信
    发射站
    黑匣子
    利维坦——(1)
    预告
    整除(水题)
    BZOJ054_移动玩具_KEY
    BZOJ4034_树上操作_KEY
    树链剖分学习&BZOJ1036
    BZOJ1208_宠物收养所_KEY
  • 原文地址:https://www.cnblogs.com/TheLin/p/14482654.html
Copyright © 2011-2022 走看看