C#基础之转换

C#中一共有两种转换方式,隐式转换和显示转换

隐式转换:就是不需要声明就能进行的转换,通俗来说就是小范围内的数据类型转大范围数据类型

显示转换:就是通常说的强制转换,需要在代码中写明要的数据类型。通俗来说就是大范围数据类型转小范围数据类型

示例如下:

一、

    string numOne="9";

    int numTwo=(int)numOne;

二、

   object obj=new myClass();

   myClass mc=(myClass)obj;

三、

   string num="9";

   int value=Convert.toInt32(num);

这三种方式都不太安全,最好用try-catch来保护

四、

   myClass mc;

   myClass.TryParse("{}",out mc);

   DataType.tryParse() 如何转换不成功,会直接给目标变量赋初值;

五、

    object obj=new myClass();

    myClass mc=obj as myClass;

    as在转换之前会先判断当前对象的类型,当类型满足要求后才会进行转换,如果不成功会返回null,所以as的效率更高。注意as运算符只执行引用转换和装箱转换。as 运算符无法执行其他转换,如用户定义的转换,这类转换应使用 cast 表达式来执行 as操作符不会做过的转换操作,当需要转化对象的类型属于转换目标类型或者转换目标类型的派生类型时,那么此转换操作才能成功。

六、

   装箱:就是值类型转换为引用类型的过程,是一种特殊的隐式转换。

   拆箱:就是引用类型转换为值类型的过程,是一种特殊的显示转换。

 

转载于:https://www.cnblogs.com/xiaoxin121/p/6775526.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值