为了账号安全,请及时绑定邮箱和手机立即绑定

在.net中 类型转换

在.net中 类型转换

慕虎7371278 2018-08-02 13:12:58
int i = 1;Double d = (Double) i;与Double d1 =Convert.Touble(i);有什么区别
查看完整描述

2 回答

?
千巷猫影

TA贡献1829条经验 获得超7个赞

反编译你看,是一样的! 你第一个也可以 隐式转换  

int i = 1;

Double d = i;

反过来就要显示!


查看完整回答
反对 回复 2018-08-06
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

可以说是完全一样的。

事实上,你还可以写成:

double d2=i;


这些都会由.NET的类型转换机制完成,无论使用的是哪个方案,最终都会归结到同一个点来达到目的。

如果你一定想知道有什么区别,这个第一个方案和我写的方案是没办法查看的(这个是语言内置了的),但使用CONVERT的方案你则可以通过REFLECTOR之类的工具反编译代码后查看过程,这个过程就是你的第一个方案与我说的方案的具体实现。

如果想知道性能,可以调用STOPWATCH来观察,只是这个时间非常非常短,可以 忽略为0。


查看完整回答
反对 回复 2018-08-06
  • 2 回答
  • 0 关注
  • 495 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信