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);
            }
  • 相关阅读:
    根据坐标经纬度计算两点之间的距离
    C# 获取类名
    Post、Get请求
    Image和Base64相互转换
    Html checkbox全选
    .NET Core 中间件
    C# DataTable 用法
    imshow(A,[])和imshow(A)的区别
    Log-spectral distance
    CUDA
  • 原文地址:https://www.cnblogs.com/TheLin/p/14482654.html
Copyright © 2011-2022 走看看