as和is类型转换
来源:互联网 发布:淘宝上怎么买正规发票 编辑:程序博客网 时间:2024/05/17 06:41
一、类型转换
1.任何类型都可以转换为其基类类型,用隐式转换完成;
2.任何类型转换为其派生类型时,必须进行显示转换。如(类型名)对象名;
3.使用GetType可以取得任何对象的精确类型;
例:int i = 0;
char c='a';
Console.WriteLine(c.GetType());
4.基本类型可以使用Convert类实现类型转换;
5.除了string以外的其他类型都有Parse方法,用于将字符串类型转换成对应的基本类型;
6.值类型和引用类型的转换成为装箱(boxing)或拆箱(unboxing)
二、is/as 示例
is转换规则
1.检查对象类型的兼容性,并返回结果true(false);
2.不会抛出异常;
3.如果对象为null,返回false;
示例
object o = "abc";
if (o is string) //执行第一次类型兼容性检查
{
string s = (string)o; //执行第二次类型兼容性检查,并转换
Console.WriteLine("转换成功"+s);
}
else {
Console.WriteLine("转换失败");
}
as转换规则
1.检查对象类型的兼容性,并返回转换结果,如果不兼容则返回null;
2.不会抛出异常;
3.如果结果判断为空,则强制执行类型转换将抛出NullReferenceException异常;
示例
object o = "abc";
string s = o as string;//执行第一次类型兼容性检查,并返回结果
if (s!=null)
{
Console.WriteLine("转换成功"+s);
}
else {
Console.WriteLine("转换失败");
}
注:as比is少执行一次兼容性检查,性能可能会高一点点。
as是引用类型 类型的转换或者装箱转换,不能与值类型转换。
- as和is类型转换
- is和as优于强制性类型转换
- 3、强制类型转换、as和is
- .NET 类型转换is和as
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- c# as is 类型转换
- 引用类型转换与is和as操作符
- C#的as, is和类型强制转换
- is和as在类型转换时的性能差异
- C# 类型转换以及is、as
- c# as is 类型转换,性能比较
- 类型转换中as、is的使用
- 00-虚拟机配置+rhel7的基本安装方法!
- 进程调度算法
- 四层和七层负载均衡的区别
- 密码学2——Java byte数组与十六进制字符串互转
- Two Year's Harvest
- as和is类型转换
- 操作系统内存管理——分区、页式、段式管理
- 设计模式
- ZOJ 3890 Wumpus
- 密码学3——Java BASE64加密解密
- JAVA-string类之compareTo用法
- 密码学4——Java 加密解密之消息摘要算法(MD5 SHA MAC)
- 语料库
- 屏幕的适配