首页 > 编程语言 >C#中is,as,using关键字的使用详情

C#中is,as,using关键字的使用详情

时间:2024-07-01 20:27:43浏览次数:24  
标签:类型转换 转换 C# 兼容 关键字 类型 using

C#中is,as,using关键字的使用

在C#中is,as,using关键字具有其特点及使用场景,其中is关键字用于检查该对象是否与给定类型兼容,as关键字用于将对象转换为指定类型,using关键字除了用于引入命名空间之外,还具有回收对象资源,如文件资源、网络资源和数据库资源等。

一、is的使用:

介绍:

is关键字用于检查该对象是否与给定类型兼容,如果兼容,则返回true,否则返回false,不会抛出异常。

使用场景:

在进行类型转换之前,可以先用is判断对象是否与给定类型兼容,如果兼容再进行转换。

案例:

string str ="test";  

object obj = str;

if(obj is string)  

{

        string str2 = (string)obj

};

 二、as的使用:

介绍:

as用于引用类型之间转换,直接进行转换,若转换成功,则返回转换后的对象,若转换失败返回null,不抛出异常。

使用场景:

引用类型的转换

转化规则:

用as来进行类型转换的时候,所要转换的对象类型必须是目标类型或者转换目标类型的派生类型

使用as操作符有如下几点限制:

第一个,不能在类型之间进行类型转化。第二个,不能应用在值类型数据。

案列:

object o = new object();   

Label lb = o as Label;  

 if (lb == null)

{    

        Response.Write("类型转换失败");

}

else

{         

        Response.Write("类型转换成功");

}

 三、using的使用:

using引用命名空间,有效回收资源,using关键字可以回收多个对象的资源,在一定的范围内有效,除了这个范围时,自动调用IDisposable释放掉,当然并不是所有的类都适用,只有实现了IDisposable接口的类才可以使用

案例:

using (SqlConnection conn=new SqlConnection("Data Source=.;Initial Catalog=imageprocess;Integrated Security=True"))
            {
                conn.Open();
            using(SqlCommand cmd=conn.CreateCommand())
                {
                    cmd.CommandText = "select count(*) from [user]"; int i = (int)cmd.ExecuteScalar();
                    MessageBox.Show(i.ToString());
                }//这个括号结束的时候自动释放SqlCommand }//这个括号结束的时候自动释放SqlConnection除了using可以达到这个目的意外,try catch也是可以的。
        }

标签:类型转换,转换,C#,兼容,关键字,类型,using
From: https://blog.csdn.net/qq_3517289697/article/details/140109344

相关文章

  • 【JavaScript脚本宇宙】从发票生成到网页保存:JavaScript PDF库指南
    探索顶级JavaScriptPDF库:高效处理PDF文档的利器前言随着数字化信息的普及和无纸化办公理念的深入,PDF文档因其高度兼容性和稳定性成为了存储、分享和展示信息的首选格式。为了满足不同用户对PDF文档生成和处理的需求,各类功能强大的JavaScript库应运而生。这篇文章将详细介......
  • mock(一)
            mock是一个用于在隔离的环境中构建RPM包的工具。它使用chroot环境来确保构建过程与主机系统隔离,从而避免主机系统上的配置和依赖影响构建结果。拷贝redflag.cfgsudocp../g.cfg.初始化mock环境mock-rg--rootdir=/home/g/build--init    ......
  • centos7 docker 配置阿里云镜像加速
    1、安装docker1.1卸载原有dockeryumremovedockerdocker-clientdocker-client-latestdocker-commondocker-latestdocker-latest-logrotatedocker-logrotatedocker-engine1.2 部署docker依赖yuminstall-yyum-utils1.3配置阿里云镜像加速yum-config-manage......
  • Could not recover RibbonLoadBalancerClient.choose ServiceInstance
    org.springframework.retry.TryException:Couldnotrecover;nestedexceptionisjava.lang.AbstractMethodError:org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;......
  • IBM-PC的字节对齐
    TheIBM-PC,shortforInternationalBusinessMachinesPersonalComputer,wasoneoftheearliestmass-producedpersonalcomputers.ItwasintroducedbyIBMin1981andquicklybecameastandardintheburgeoningpersonalcomputingindustry.TheIBM-PCwas......
  • 5. Docker Compose
    DockerCompose安装先安装DockerComposesudocurl-L"https://get.daocloud.io/docker/compose/releases/download/1.28.5/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-compose为docker-compose添加可执行权限sudochmod+x/usr/local/bin/docker-co......
  • 4. Docker实战
    Docker安装Mysql首先确认当前系统中,是否有mysql镜像文件,结果发现没有再使用dockersearch命令来搜索hub.docker.com上的mysql镜像文件 我们就使用starts最多的,官方的mysql镜像。使用dockerpullmysql命令,来下载mysql:latest,也就是mysql最新版的镜像 根据mysql镜像创建并运行一......
  • 3. Docker File
    DockerFileDockerFile是一个脚本程序。DockerFile这个脚本程序就是用来创建Docker镜像的。使用DockerFile的三个固定步骤☐编写DockerFile文件:手动编写一个DockerFile文件,语法必须符合DockerFile的语法规则☐dockerbuild:使用“dockerbuildDockerFile文件名”来创建出一个Do......
  • 2. Docker基础
    Docker深入演示例子为了加深大家对docker技术中的三大概念的理解,我再演示一个例子:拉取tomcat镜像,并部署web应用,并且运行。 dockersearchtomcat在仓库中搜索tomcat镜像,部分截图如下:dockerpulltomcat拉取tomcat镜像这里为什么tomcat镜像的大小有529MB?tomcat 不会这么大啊。......
  • 1. Docker快速起步
    Docker先安装Docker,再讲课没有Docker的日子里在以前的开发时代,开发人员把自己开发好的war交付给运维人员,运维人员为了把war部署到服务器上且保证能运行,就必须由运维人员在服务器上搭建好运行环境! 可这样带来的问题是,如果开发环境与部署环境不一致(比如版本),则会导致无法在服务器环......