格式化数字为货币形式,该如何解决

格式化数字为货币形式DimnAsSingle123456789Label1.Textn.ToString( C )为什么格式化之后的值是123,45

格式化数字为货币形式
Dim   n   As   Single   =   123456789
Label1.Text   =   n.ToString( "C ")

为什么格式化之后的值是123,456,800
而不是123,456,789


[解决办法]
Sub Main()
Dim n As Single = 123456789
Dim str As String = n.ToString( "C ")

Dim n1 As Integer = 123456789
Dim str1 As String = n1.ToString( "C ")

Debug.WriteLine(str)
Debug.WriteLine(str1)
End Sub
[解决办法]
Dim n As Double = 123456789
Label1.Text = n.ToString( "C ")


Single 改为 Double

精度不够吧