我只是在浏览一些 C# 编码问题。小提琴链接在这里
问:以下代码的输出是什么?
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Math.Round(6.5));
Console.WriteLine(Math.Round(11.5));
}
}
Run Code Online (Sandbox Code Playgroud)
6 12
这是输出。
我怀疑6.5是否是6。11.5怎么会是12?
它应该是 11 或者 6.5 应该是 7。
也许这是非常不明智的,任何建议/解释都可以帮助我清楚地理解。
该文档清楚地定义了这种行为:
最接近 a 的整数。如果 a 的小数部分位于两个整数之间,其中一个是偶数,另一个是奇数,则返回偶数。
如果您想更改此行为,请使用允许您指定中点舍入行为的重载(请参阅文档)。
Math.Round(6.5, MidpointRounding.AwayFromZero) // returns 7.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
608 次 |
| 最近记录: |