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也是可以的。 
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/8055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI智能分析赋能EasyCVR视频汇聚平台,为安全生产监管提供保障

一、背景需求 为提升公共及生产安全监管,深入贯彻落实中央关于智慧城市、数字乡村的部署要求,视频设备融合管理已成为视频治理的必然趋势。针对当前部分地区在视频监控系统建设中存在的问题,如重点地区视频监控系统建设零散、视频监控数据孤…

提升滞销商品处理效能,精细化库存管理的关键要素

一、明确滞销商品的概念 1. 什么是滞销商品 滞销商品是指在一定期限内,其销售量大大低于预期或市场需求的商品。具体来说,这些商品可能因为款式不新颖、功能落后、价格不合理、过时、质量不佳或其他因素而不受消费者欢迎,导致销售速度极慢或…

HTTP免费升级到HTTPS攻略

HTTPS就是在HTTP的基础上加入了SSL,将一个使用HTTP的网站免费升级到HTTPS的关键就是申请一个免费的SSL证书 具体步骤如下 1 获取免费SSL证书 国内的JoySSL 提供不限量免费的SSL/TLS证书。根据自己的需求选择证书类型(登录JoySSL官网,创建账号…

列表处理基础问题的四种方法:从入门到惊艳

目录 一、引言 二、方法一:基础循环遍历 三、方法二:列表推导式 四、方法三:内置函数与高阶函数 五、方法四:惊艳的库与工具 六、案例研究 七、总结 一、引言 在编程的世界中,列表(List&#xff09…

3套Matplotlib主题

分享3套Matplotlib主题,让图表更好看 seaborn默认主题 import seaborn as sns import pandas as pd import matplotlib as mpltips pd.read_csv(./sns_data/tips.csv)sns.relplot(datatips,x"消费金额 ($)",y"小费金额 ($)",hue"客人性…

matlab绘制时间序列图,横坐标轴如何标注为月-日

Excel表格中有类似于如下 年月日对应的数据 导入 matlab中,为数值矩阵;了解该表格中的时间跨度为从2021年1月2日至2021年12月31日,中间没有缺失,绘图代码: % clear; timespan1[20210102 20211231]; datenn1datenum(da…

保姆级教学 基于Hexo搭建个人网站(Github)

文章目录 搭建Hexo静态博客介绍一、注册Github账号二、 安装前置软件包三、 绑定github仓库创建SSH私钥添加私钥连接Github仓库 四、安装hexo1. 更改npm镜像源2. 创建一个文件夹 在里面打开终端3. 初始化hexo 五、切换主题1. 安装主题2. 修改默认主题查看修改主题后的网站 六、…

宽动态设置

公司的一款摄像头的宽动态范围为1-100,设置多少合适? GPT答案: 摄像头的宽动态范围(Wide Dynamic Range,简称WDR)通常表示它能够同时捕捉到高光和阴影细节的能力。选择合适的宽动态范围取决于具体的拍摄场…

(图论)最短路问题合集(包含C,C++,Java,Python,Go)

不存在负权边: 1.朴素dijkstra算法 原题: 思路:(依然是贪心的思想) 1.初始化距离:dis[1]0,dis[i]INF(正无穷) 2.循环n次: 找到当前不在s中的dis最小的点&…

搭建Docker私有镜像仓库

大家好,今天给大家分享一下如何搭建私有镜像仓库,私有镜像仓库可以更好地管理和控制镜像的访问和使用,确保只有授权的人员能够获取和使用特定的镜像,而且方便团队内部共享定制化的镜像,提高开发和部署效率,…

自动驾驶主流芯片及平台架构(三)低算力平台

前面有提到,自动驾驶等级每增加一级,所需要的芯片算力就会呈现十数倍的上升,L2级自动驾驶的算力需求仅要求2-2.5TOPS,但是L3级自动驾驶算力需求就需要20-30TOPS,到L4级需要200TOPS以上,L5级别算力需求则超过2000TOPS。…

购物车操作

添加购物车: 需求分析和接口设计: 接口设计: 请求方式:POST 请求路径:/user/shoppingCart/add请求参数:套餐id、菜品id、口味返回结果:code、data、msg 数据库设计: 这上面出现了…

卷积常用计算

文章目录 一、池化1.特征图尺寸 二、已知原始卷积核和膨胀计算H和W三、padding的计算 一、池化 1.特征图尺寸 H_out floor((H_in-kernel_size)/stride)1 W_out floor((W_in-kernel_size)/stride)1 二、已知原始卷积核和膨胀计算H和W new_h 1(original_h -1)*dilation_he…

JAVA IO/NIO 知识点总结

一、常见 IO 模型简介 1. 阻塞IO模型 最传统的一种IO模型,即在读写数据过程中会发生阻塞现象。当用户线程发出IO请求之后,内核会去查看数据是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线…

IOT-9608I-L ADC端口的使用(连续采样ADC值)

目录 概述 1 硬件介绍 1.1 认识硬件 1.2 引脚信号定义 2 软件功能实现 2.1 查看iio:device0下的接口信息 2.2 实现连续采样ADC 2.2.1 功能描述 2.2.2 代码实现 2.2.3 详细代码 3 测试 概述 本文主要讲述IOT-9608I-L ADC端口的使用方便,其内容包括板卡上的…

C++基础-编程练习题1

文章目录 一、哥德巴赫猜想二、哥德巴赫猜想2三、打印成绩单四、成绩输入输出五、数组输出奇数位偶数位 一、哥德巴赫猜想 【试题描述】 哥德巴赫提出了以下的猜想:任何一个大于 2 的偶数都可以表示成 2 个质数之和。 质数是指除了 1 和本身之外没有其他约数的数&a…

3.3 Gateway之自定义过滤器

1.Gateway过滤器种类 过滤器种类描述GatewayFilter路由过滤器,作用于任意指定的路由。默认不生效,要配置到路由后生效GlobalFilter全局过滤器,作用范围是所有路由。声明后自定生效 2.Gateway过滤器参数 参数描述ServerWebExchangeGateway内…

无人机运营合格证:民用无人机驾驶航空器运营合格证书

无人机运营合格证是指经国家相关部门审核通过并颁发给相应无人驾驶航空器运营机构的一种资质证明。获得该证书的机构具备相关的技术和管理能力,能够安全、合规地运营无人驾驶航空器。 无人机运营合格证的申请流程一般包括报名、培训学习、考试准备、考试报名、考试…

抽象类(Abstract Class)

目录 抽象方法(Abstract Methods) 非抽象方法(Non-abstract Methods) 字段(Fields) 属性(Properties)

fabric搭建生产网络

fabric搭建生产网络 一、生成组织结构与身份证书 解包 hyperledger-fabric-linux-amd64-2.5.0.tar.gz 1.1、crypto-config.yaml配置文件 ./bin/cryptogen showtemplate > crypto-config.yaml 将crypto-config.yaml内容修改为: # -------------------------…