当前位置:  开发笔记 > 编程语言 > 正文

通过强制转换或Convert.ToSingle()将double转换为float?

如何解决《通过强制转换或Convert.ToSingle()将double转换为float?》经验,为你挑选了1个好方法。

在C#中我可以通过强制转换(float)或者转换为双精度浮动Convert.ToSingle().

double x = 3.141592653589793238463;
float a = (float)x;
float b = Convert.ToSingle(x);

ab变得平等.

这两种技术之间有什么不同吗?我应该选择哪一个?为什么?



1> Glorin Oaken..:

从.NET参考源:

public static float ToSingle(double value)
{
     return (float)value;
}

所以,你的答案是它们完全相同,在引擎盖下.

两者之间的任何偏好都是个人风格的选择.就个人而言,我总是会使用演员,因为它更短,而且对我来说似乎更惯用.


`Convert`类是在.NET Framework的不同基类型之间进行转换的语言中立方式.并非所有在.NET上运行的语言都有像C#这样的强制转换运算符.例如:在VB.NET中,你有CType(),CDbl(),DirectCast()和隐式转换,它们都没有与C#中的强制转换操作符完全相同的语义.
由于似乎根本没有任何理由使用ToSingle,因此这不是个人选择,但客观上来说,使用演员表会更好。
推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有