.Net 数据类型转化

隐式类型转换:

     小范围转大范围;

     char转其他类型可以,反之不可。

显示类型转换: 

   简单类型

  1. char a = (char)1;                           简单类型的转换,编译时报错。   (4.6时传为4,直接去小数)
  2. int b = Convert.ToInt32(123.4);     简单类型的转换,执行时报错。   (4.6时传为5,四舍五入,小数为5时,返回偶数)
  3. int c = Int32.parse("123");             只string转数字,执行时报错。   ("4.6"时传失败,格式错误)

      2和3区别:Convert.ToInt32(Null)的结果为0,Int32.parse(Null)报ArgumentNullException异常。

 

   引用类型

关键字
数据类型
参数关系
运行时失败
CType
任何数据类型
必须在两种数据类型之间定义扩大转换或收缩转换
引发 InvalidCastException
DirectCast
任何数据类型
一个类型必须继承自或者实现另一个类型
引发 InvalidCastException
TryCast
仅引用类型
一个类型必须继承自或者实现另一个类型
返回 Nothing

 

 

 

 

 

 

Dim p as product
p = CType(obj, Product)
p = DirectCast(obj, Product)

例:c = DirectCast(f, System.Windows.Forms.Control) 效率最好
p =TryCast(obj, Product)

转载于:https://www.cnblogs.com/whitecf/p/4785218.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值