gpt4 book ai didi

c# - 在 C# 中将 double 转换为 int

转载 作者:IT王子 更新时间:2023-10-29 03:38:46 25 4
gpt4 key购买 nike

在我们的代码中,我们有一个需要转换为 int 的 double。

double score = 8.6;
int i1 = Convert.ToInt32(score);
int i2 = (int)score;

谁能解释一下为什么 i1 != i2

我得到的结果是:i1 = 9i2 = 8

最佳答案

因为 Convert.ToInt32回合:

Return Value: rounded to the nearest 32-bit signed integer. If value is halfway between two whole numbers, the even number is returned; that is, 4.5 is converted to 4, and 5.5 is converted to 6.

...而 Actor truncates :

When you convert from a double or float value to an integral type, the value is truncated.

更新:请参阅下面 Jeppe Stig Nielsen 的评论以了解其他差异(但是,如果 score 是实数,则这些差异不会起作用,就像这里的情况一样)。

关于c# - 在 C# 中将 double 转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10754251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com