C#中的as和is的使用方法
as和is这两个关键字在C#中还是比较常见的,比如说如果你想判断一个数据的类型是否是你指定的类型,那么可以考虑使用is这个关键字,它会返回一个bool值,如果是则为true,反之则是false。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyTest {class Program{static void Main(string[] args){object nNum = "123";if(nNum is int){Console.WriteLine("nNum是int类型");}else{Console.WriteLine("nNum不是int类型");}Console.ReadKey();}} }
as关键字在使用的时候需要注意以下几点:
1.不能用于类型与类型之间的转换,编译的时候会出现错误;如下所示:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyTest {class Program{static void Main(string[] args){int nNum = 123;string str = nNum as string;Console.ReadKey();}} }
2.as关键字必须用于引用类型或者可以为null的类型值,如下所示,用于int类型转换,编译器便会报错。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyTest {class Program{static void Main(string[] args){object obj = 123;int nNum = obj as int;Console.WriteLine(nNum);Console.ReadKey();}} }
3.用as关键字进行转换时,所要转换对象的类型必须是目标类型或者是目标类型的派生类型
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyTest {public class Animal{public void Breath(){Console.WriteLine("动物呼吸");} }public class Hourse : Animal { }class Program{static void Main(string[] args){Hourse h = new Hourse();Animal a = h as Animal;a.Breath();Console.ReadKey();}} }
转载于:https://www.cnblogs.com/QingYiShouJiuRen/p/11351220.html
C#中的as和is的使用方法相关推荐
- 搜集《ASP.NET中常用的26个优化性能方法》
1. 数据库访问性能优化 a.数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源.ASP.NET中提供了连接 ...
- linux 统计日志数量总,shell统计日志中时间段内匹配的数量的方法
shell统计日志中时间段内匹配的数量的方法,有需要的朋友可以参考下. 假设日志文件mtasvr.log格式如下: T:24583088(04:02:06)[root:Info] 6KqowLDLAg ...
- C#中判断空字符串的3种方法性能分析【月儿原创】
C#中判断空字符串的3种方法性能分析 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/ 时间:2007.4.28 3种方法分别是:string ...
- jquery.ajax的url中传递中文乱码问题的解决方法
jquery.ajax的url中传递中文乱码问题的解决方法 JQuery JQuery默认的contentType:application/x-www-form-urlencoded 这才是JQuer ...
- java判断一个对象是否为空_Java中判断对象是否为空的方法的详解
首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.util包下的.这两种StringU ...
- java 中lock,java中lock获取锁的四种方法
在java接口中会存放着许多方法,方便线程使用时的直接调用.对于lock接口大家都不陌生,我们已经初步对概念进行了理解.那么在获取锁的方法上想必还不是很清楚.下面我们就lock获取锁的四种方法分别进行 ...
- web前端培训:CSS中单行文本溢出显示省略号的方法
CSS中单行文本溢出显示省略号的方法你知道吗?在web前端技术学习中,这个问题其实是属于老生常谈了,因为css单行文本的应用是非常频繁的,比如网站最基本的文章列表,标题会很长,而显示列表的区域宽度却没 ...
- Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...
Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn 发布于:2012-09-15 ...
- 数据科学中常见的9种距离度量方法
选自towardsdatascience 作者:Maarten Grootendorst 机器之心编译 编辑:陈萍 在数据挖掘中,我们经常需要计算样本之间的相似度,通常的做法是计算样本之间的距离.在本 ...
- Linux系统中运行.sh文件的几种方法
在Linux系统中执行.sh文件的几种方法: 1. cd到.sh文件所在的目录,然后执行./xxx.sh [前提:该./sh文件要有可执行的权限,chmod u+x xxx.sh] 2. 在任何 ...
最新文章
- oracle显示多表数据,Oracle DB 使用连接显示多个表中的数据
- 淘宝爆出的异常...
- 系统如何启动数据库服务器,怎么启动sql数据库服务器
- POJ 3045 Cow Acrobats (最大化最小值)
- ArcGIS制图技巧系列(1)还原真实的植被
- 跨界造智能机器人,娃哈哈能“喝”出新辉煌吗
- github使用命令
- xcode动态改变窗口大小_[SwiftUI 100天] 在 SwiftUI 中动态过滤 @FetchRequest
- MyBatis教程看这一篇就够啦,简单又全面(IDEA版)
- 2013年上半年CSDN精华0分下载资源
- java使用poi制作的ppt被损坏_poi操作ppt创建表格,结果却是这样?
- SqlServer 获取工作日(周六、周日休息,周六日不休息,周六不休息)
- 【服务器搭建个人网站】附:接入的服务商 以及 安全评估报告该如何填写?
- 切线空间(Tangent Space) 的计算与应用
- Java 基础篇--字符串
- 有关服装流水线成功的话题
- 学会善于总结,善于表达
- 爬取链家二手房交易数据
- 第6章 TCP/IP路由协议故障处理
- android 很多牛叉界面库github地址
热门文章
- .net core精彩实例分享 -- 泛型和集合
- 微软重新设计 Edge for Android 的用户界面
- 在C#中使用反射的简单例子
- ikun 潜入?疑似 B 站后台源码泄露
- 微软开源数据处理引擎 Trill,每天可分析万亿次事件
- 计算机组装的理论知识,计算机组装基本知识点.ppt
- js取thymeleaf值_26、模板引擎thymeleaf
- vue-quill-editor 获取无法获取光标位置
- TP5.1 查询数据库中上一条和下一条记录
- matlab gui 制动程序设计,Matlab的GUI程序设计程序.doc