VB.NET中的小数位数

Lum*_*art 4 vb.net decimal

如何检查VB.NET中数字的小数位数?

例如:在循环中我有一个if语句,在该语句中我想检查一个数字是否有四个小数位(8.9659).

Den*_*aub 5

Dim numberAsString As String = myNumber.ToString()
Dim indexOfDecimalPoint As Integer = numberAsString.IndexOf(".")
Dim numberOfDecimals As Integer = _
    numberAsString.Substring(indexOfDecimalPoint + 1).Length
Run Code Online (Sandbox Code Playgroud)


小智 5

考虑整数值的类似方法。

Public Function NumberOfDecimalPlaces(ByVal number As Double) As Integer
    Dim numberAsString As String = number.ToString()
    Dim indexOfDecimalPoint As Integer = numberAsString.IndexOf(".")

    If indexOfDecimalPoint = -1 Then ' No decimal point in number
        Return 0
    Else
        Return numberAsString.Substring(indexOfDecimalPoint + 1).Length
    End If

End Function
Run Code Online (Sandbox Code Playgroud)