VB.Net - 資料型別



資料型別指的是一個廣泛的系統,用於宣告不同型別的變數或函式。變數的型別決定了它在儲存中佔據的空間大小以及如何解釋儲存的位模式。

VB.Net 中可用的資料型別

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

資料型別 儲存分配 值範圍
布林型 (Boolean) 取決於實現平臺 TrueFalse
位元組型 (Byte) 1 位元組 0 到 255(無符號)
字元型 (Char) 2 位元組 0 到 65535(無符號)
日期型 (Date) 8 位元組 0:00:00 (午夜) 0001年1月1日 到 9999年12月31日晚上11:59:59
十進位制型 (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-324 到 1.79769313486231570E+308,正值

整型 (Integer) 4 位元組 -2,147,483,648 到 2,147,483,647(有符號)
長整型 (Long) 8 位元組 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807(有符號)
物件型 (Object)

32位平臺上為4位元組

64位平臺上為8位元組

任何型別的變數都可以儲存在Object型別的變數中
短位元組型 (SByte) 1 位元組 -128 到 127(有符號)
短整型 (Short) 2 位元組 -32,768 到 32,767(有符號)
單精度型 (Single) 4 位元組

-3.4028235E+38 到 -1.401298E-45,負值;

1.401298E-45 到 3.4028235E+38,正值

字串型 (String) 取決於實現平臺 0 到大約 20 億個 Unicode 字元
無符號整型 (UInteger) 4 位元組 0 到 4,294,967,295(無符號)
無符號長整型 (ULong) 8 位元組 0 到 18,446,744,073,709,551,615(無符號)
使用者自定義型別 取決於實現平臺 結構的每個成員都有一個由其資料型別決定的範圍,並且獨立於其他成員的範圍。
無符號短整型 (UShort) 2 位元組 0 到 65,535(無符號)

示例

以下示例演示了一些型別的用法:

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

編譯並執行上述程式碼後,將產生以下結果:

U and, Me
declaring on the day of: 12/4/2012 12:00:00 PM
We will learn VB.Net seriously
Lets see what happens to the floating point variables:
The Single:0.1234568, The Double: 0.123456789012346

VB.Net 中的型別轉換函式

VB.Net 提供以下內聯型別轉換函式:

序號 函式和描述
1

CBool(expression)

將表示式轉換為布林型資料型別。

2

CByte(expression)

將表示式轉換為位元組型資料型別。

3

CChar(expression)

將表示式轉換為字元型資料型別。

4

CDate(expression)

將表示式轉換為日期型資料型別。

5

CDbl(expression)

將表示式轉換為雙精度型資料型別。

6

CDec(expression)

將表示式轉換為十進位制型資料型別。

7

CInt(expression)

將表示式轉換為整型資料型別。

8

CLng(expression)

將表示式轉換為長整型資料型別。

9

CObj(expression)

將表示式轉換為物件型別。

10

CSByte(expression)

將表示式轉換為短位元組型資料型別。

11

CShort(expression)

將表示式轉換為短整型資料型別。

12

CSng(expression)

將表示式轉換為單精度型資料型別。

13

CStr(expression)

將表示式轉換為字串型資料型別。

14

CUInt(expression)

將表示式轉換為無符號整型資料型別。

15

CULng(expression)

將表示式轉換為無符號長整型資料型別。

16

CUShort(expression)

將表示式轉換為無符號短整型資料型別。

示例

以下示例演示了其中一些函式:

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
12/4/2012
1
1
廣告