zoukankan      html  css  js  c++  java
  • C#细节之as和is

    判断对象或变量属于某种类型:
    一、适用类型
    1)is可以判断引用类型和值类型。
    2)as可以判断引用类型和可空类型。(注:当值类型变为可空类型时可以用as判断,可以推断可空实际是将值类型进行装箱操作转化为了引用类型)。
    二、返回值
    1)is返回值为bool型。
    2)as返回值为要判断类型。
    例1:
    class Program
        {
            static void Main(string[] args)
            {
                int? i = 0;
                string j = String.Empty;
                int k = 0;
                if (j is int)
                {
                    Console.WriteLine("int");
                }
                else
                {
                    Console.WriteLine("not int");
                }

                Other other = new Other();
                if (other is Other)
                {
                    Console.WriteLine("Yes");
                }
                else
                {
                    Console.WriteLine("No");
                }
                //int x = k as int;//Error:as不可以用于值类型
                int? y = i as int?;//as可以用在可空类型
                Console.ReadKey();
            }
        }

        class Other
        {
        }
    例2:
    FindControl判断类型时有两种写法:
    1)
    TextBox txtTmp = XXX.FindControl("txtTmp") as TextBox;
    if(txtTmp!=null)
    {
          txtTmp.Text  = "Hello";//操作txtTmp对象
    }
    2)
    TextBox txtTmp = XXX.FindControl("txtTmp") as TextBox;
    if(txtTmp is TextBox)
    {
         txtTmp = (TextBox)XXX.FindControl("txtTmp");
         txtTmp.Text  = "Hello";//操作txtTmp对象
    }
    个人推荐第一种写法^=^
    敬告

    作者:pangxiaoliang
    出处:http://www.cnblogs.com/pangxiaoliang
    本文版权归pangxiaoliang和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,谢谢合作。
  • 相关阅读:
    Delphi中解析Xml的控件-SimDesign NativeXml
    DELPHI判断是否64位操作系统
    几个获取Windows系统信息的Delphi程序
    delphi假死线程堵塞解决办法
    Delphi ADO数据操作封装类
    Delphi的时间与字符串函数代码示例
    【BZOJ2132】圈地计划 最小割
    【BZOJ3544】[ONTAK2010]Creative Accounting 前缀和+set
    【BZOJ4281】[ONTAK2015]Związek Harcerstwa Bajtockiego LCA
    【BZOJ2083】[Poi2010]Intelligence test 二分
  • 原文地址:https://www.cnblogs.com/pangxiaoliang/p/1530652.html
Copyright © 2011-2022 走看看