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
广告