int16和int32之间的区别

时间:2015-01-29 10:34:59

标签: vb.net

请使用以下示例帮助我理解int16和int32之间的区别:

Public Class ABC
    Public Function Test(ByVal x As Int16, ByVal y As Int16) As Double
        Return x * y
    End Function

    Public Function Test(ByVal x As Int32, ByVal y As Int32) As Integer
        Return x + y
    End Function
End Class
Module Module1
    Sub Main()
        Dim obj As New ABC
        MsgBox(obj.Test(10, 20))
    End Sub
End Module

在这种情况下,调用参数Test的方法int32。 根据定义,10和20都在两种数据类型的范围内。那么为什么obj.Test(10, 20)没有使用Test参数调用int16方法?

1 个答案:

答案 0 :(得分:-2)

他们的存储容量不同。

Int 16 - (-32,768 to +32,767)

Int 32 - ( - 2,147,483,648 to +2,147,483,647)