VB.Net資料型別


資料型別是指用於宣告不同型別的變數或函式的擴充套件系統。變數的型別決定了它在儲存器中佔用多少空間以及如何解釋儲存的位元型樣。

VB.Net資料型別

VB.Net提供了廣泛的資料型別。下表顯示了所有VB.Net可用的資料型別:

資料型別 儲存分配(大小) 值範圍
Boolean 取決於實施平台 TrueFalse
Byte 1個位元組 0 ~ 255(無符號)
Char 2個位元組 0 ~ 65535(無符號)
Date 8個位元組 0001年1月1日00:00:00(午夜)至9999年12月31日11:59:59 PM
Decimal 16個位元組 0 ~ +/-79,228,162,514,264,337,593,543,950,335 (+/-7.9...E+28) 沒有小數點; 0 ~ +/-7.9228162514264337593543950335,在小數點右邊有28位數位值
Double 8個位元組 負值範圍:-1.79769313486231570E + 308-4.94065645841246544E-324;正值範圍:4.94065645841246544E-3241.79769313486231570E+308
Integer 4個位元組 -2,147,483,6482,147,483,647(有符號)
Long 8個位元組 -9,223,372,036,854,775,8089,223,372,036,854,775,807(帶符號)
Object 在32位元平台上有4個位元組,在64位元平台上有8個位元組 任何型別都可以儲存在Object型別的變數中
SByte 1個位元組 -128127(有符號)
Short 2個位元組 -32,76832,767(有符號)
Single 4個位元組 -3.4028235E + 38-1.401298E-45為負值;1.401298E-453.4028235E + 38為正值
String 取決於實施平台 0到約20億個Unicode字元
UInteger 4個位元組 04,294,967,295(無符號)
ULong 8個位元組 018,446,744,073,709,551,615(無符號)
使用者自定義 取決於實施平台 結構中的每個成員都有一個由其資料型別決定的範圍,而與其他成員的範圍無關
UShort 2個位元組 0 ~ 65,535(無符號)

範例

以下範例演示了一些型別的使用,建立一個專案:DataTypes,並建立一個VB檔案:DataTypes.vb,程式碼如下所示 -

Module DataTypes
    Sub Main()
        Dim b As Byte
        Dim n As Integer
        Dim si As Single
        Dim d As Double
        Dim da As Date
        Dim c As Char
        Dim s As String
        Dim bl As Boolean
        b = 1
        n = 1234567
        si = 0.12345678901234566
        d = 0.12345678901234566
        da = Today
        c = "U"c
        s = "Me"
        If ScriptEngine = "VB" Then
            bl = True
        Else
            bl = False
        End If
        If bl Then
            'the oath taking'
            Console.Write(c & " and," & s & vbCrLf)
            Console.WriteLine("declaring on the day of: {0}", da)
            Console.WriteLine("We will learn VB.Net seriously")
            Console.WriteLine("Lets see what happens to the floating point variables:")
            Console.WriteLine("The Single: {0}, The Double: {1}", si, d)
        End If
        Console.ReadKey()
    End Sub

End Module

執行上面範例程式碼,得到以下結果 -

VB.Net型別轉換函式

VB.Net提供了以下的一致型別轉換函式:

編號 方法 描述
1 CBool(expression) 將表示式轉換為布林資料型別。
2 CByte(expression) 將表示式轉換為Byte資料型別。
3 CChar(expression) 將表示式轉換為Char資料型別。
4 CDate(expression) 將表示式轉換為日期資料型別
5 CDbl(expression) 將表示式轉換為Double資料型別。
6 CDec(expression) 將表示式轉換為十進位制資料型別。
7 CInt(expression) 將表示式轉換為Integer資料型別。
8 CLng(expression) 將表示式轉換為Long資料型別。
9 CObj(expression) 將表示式轉換為物件型別。
10 CSByte(expression) 將表示式轉換為SByte資料型別。
11 CShort(expression) 將表示式轉換為Short資料型別。
12 CSng(expression) 將表示式轉換為Single資料型別。
13 CStr(expression) 將表示式轉換為字串資料型別。
14 CUInt(expression) 將表示式轉換為UInt資料型別。
15 CULng(expression) 將表示式轉換為ULng資料型別。
16 CUShort(expression) 將表示式轉換為UShort資料型別。

範例:

以下範例演示了上述一部分函式的使用:

Module DataTypes
    Sub Main()
        Dim n As Integer
        Dim da As Date
        Dim bl As Boolean = True
        n = 1234567
        da = Today
        Console.WriteLine(bl)
        Console.WriteLine(CSByte(bl))
        Console.WriteLine(CStr(bl))
        Console.WriteLine(CStr(da))
        Console.WriteLine(CChar(CChar(CStr(n))))
        Console.WriteLine(CChar(CStr(da)))
        Console.ReadKey()
    End Sub
End Module

執行上面範例程式碼,得到以下結果 -

True
-1
True
2017/11/6
1
2