类型转换性能
本文关键字:性能 类型转换 | 更新日期: 2023-09-27 18:23:47
两个转换的执行时间相同还是不同?.net 如何铸造
float j = r;
decimal e = Convert.ToDecimal(j);in convert class using todecimal method is converting to decimal
decimal tt=(decimal)j;// How does this work in casting (Exactly How boxing and unboxing works)
没有区别,因为System.Convert.ToDecimal(Single)
使用的代码与您在这里看到的完全相同。
public static decimal ToDecimal(float value) {
return (decimal)value;
}
但总的来说,你应该先自己测量。以下是E.Lippert所说的:
"如果你有两匹马,你想知道哪匹马更快,那就和你的马比赛。"
如果您查看它们的调用堆栈,您会看到两者。
decimal tt=(decimal)j;
比少1个函数调用。
decimal e = Convert.ToDecimal(j);
因为我之前的人在那里回答的原因(我本来会把这个放在评论中,但我没有50个代表,所以我不能)。
所以非常小
decimal tt=(decimal)j;
速度更快。