有什么区别:
Dim a As Integer = CInt(2.2)
和
Dim a As Integer = Math.Round(2.2)
答案 0 :(得分:0)
这两个功能之间的区别在于它们完全不同的东西:
CInt
转换为Integer
类型Math.Round
将值四舍五入到最近的Integer
Math.Round
将为您提供2.0
。您也正在使用该功能,请参阅上面的MSDN链接。
如果转化失败,两者都会引发Exception
,您可以使用MSDN documentation。
旁注:你是VB.NET的新手,但你可能想尝试切换到C#。我发现它是VB.NET和VB的混合体。 C ++,它比VB.NET更容易使用。
答案 1 :(得分:0)
CInt返回一个整数,但会将.5舍入为最接近的偶数,所以:
2 = CInt(2.5)
4 = CInt(3.5)
两者都是真的,可能不是你想要的。
可以告诉Math.Round从零开始。但是返回一个双精度数,所以我们仍然需要投射它
3 = CInt(Math.Round(2.5, MidpointRounding.AwayFromZero))