c# - 通过 cast 或 Convert.ToSingle() 将 double 转换为 float?

标签 c# .net casting type-conversion

在 C# 中,我可以通过强制转换 (float)Convert.ToSingle() 将 double 转换为 float 。

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

ab 变得相等。

这两种技术之间有什么区别吗?我应该更喜欢哪一个?为什么?

最佳答案

来自.NET reference source :

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

因此,您的答案是它们在本质上完全相同。

两者之间的任何偏好都完全是个人风格选择。就我个人而言,我总是会使用类型转换,因为它更短,而且对我来说更符合习惯。

关于c# - 通过 cast 或 Convert.ToSingle() 将 double 转换为 float?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34090397/

相关文章:

sql - 在单列中添加两种类型的类型转换

c - 如何从 C 中的 "raw"内存中读取/写入类型值?

C# 不正确的长数除法返回零

c# - 华庭;通过 id 获取元素不起作用

c# - 这个图案有名字吗? (C# 编译时类型安全,具有 "params"不同类型的参数)

c# - 使用 linq-to-entities 将字符串转换为日期时间的大问题

c# - 将数据从模型传递到自定义验证类

c# - 装箱和拆箱

c# - ANTLR AST 建筑 : root node as string instead of character

c# - 线程,两个线程之间的通信c#