.NET中三种数据类型转换的区别:(type), type.Parse, Convert类

.NET为我们提供了三种数据类型类转换的方法,她们分别是:(typeName),此方法适合于类型,type.Parse, 此方法只适于类.NET中的数字类型,还有一种就是使用 Convert 类型来进行类型转换。

我看来看看这三种数据类型转换的区别,还是用程序来说明吧:

None.gif using System;
None.gif
None.gif
public class TypeCast
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif
public static void Main( )
ExpandedSubBlockStart.gifContractedSubBlock.gif
dot.gif{
InBlock.gif
object obj1 = 1; // 由整数装箱成一个对象类型
InBlock.gif
object obj2 = "1"; // obj2 引用一个字符串对象
InBlock.gif
InBlock.gif
// 没有错误
InBlock.gif
int int1 = (int)obj1;
InBlock.gif
InBlock.gif
// 下面这一行引发 InvaildCastException 异常, 无法将 obj2 的值转换成整型
InBlock.gif
// 此时我们可以使用 Convert.ToInt32 方法来进行转换,在这里不能使用 int.Parse 方法
InBlock.gif
// 因为 int.Parse 方法只接受一个 string 类型的参数
InBlock.gif
int int2 = (int)obj2;
InBlock.gif
InBlock.gif
// 下面一行也将引发 InvaildCastException 的异常, 无法将 obj1 的值转换成 string 类型
InBlock.gif
// 在这里可以使用 Convert.ToString 方法或者使用 obj1.ToString 方法
InBlock.gif
string str1 = (string)obj1;
InBlock.gif
InBlock.gif
// 这一行是正确的
InBlock.gif
string str2 = (string)obj2;
ExpandedSubBlockEnd.gif }

ExpandedBlockEnd.gif}


还有一种情况就是,当把数据转换成数字类型时,如果被转换的数据为 null, 使用 (typeName), 和 type.Parse 这两种方法都会出错, 而使用 Convert 方法会返回一个 0.

转载于:https://www.cnblogs.com/grantvip/archive/2008/09/30/1302352.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值