VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net教程之数据类型

<一> Integer整型(相关vb.net教程)
类型 内在分配(字节) 数值范围
Short 2 -32768~32767
Int16 2 -32768~32767
UInt16(无符号) 2 0~65535
Integer 4 -2147483648~2147483647
Int32 4 -2147483648~2147483647
UInt32(无符号) 4 0~4294967295
Long 8 -9223372036857755808~922337203687755807
Int64 8 -9223372036857755808~922337203687755807
UInt64(无符号) 8 0~184467440737095551615
 
<二> 浮点数
浮点数也称实型数或实数,是带有小数部分的数值。它由三部分组成:符号、指数及尾数。单精度浮点数和双精度浮点数的指数分别用“E”(或“e”)和“D”(或“d”)来表示。
 
(1)Single单精度浮点型
这个类型用于存储单精度浮点型数字,占用4个字节,负数取值范围在-3.402823E+38~-14.401298E-45;正数取值范围在1.401298E+45~3.40282E38之间。
 
(2)Double 双精度浮点型
   一般浮点数字都存储为Double双精度浮点型,可以保证很高的精度,是最常用的浮点型数字类型,占用8个字节,范围在-1.79769313486231E308~-1.79769313486232E308之间。
 
(3)Decimal十进制
   VB 6.0支持Currency(贷币)数据类型,Currency变量以整数格式存储64位数字,以10000为标度,将数字表示为定点数,其小数左边为15位,右边为4位。VB 6.0的Currency数据类型的精度不够,无法避免四舍五入的误差,因些在VB.NET引入了Decimal这种数据类型。VB.NET中将Currency数据类型转换为Decimal、Decimal变量存储带有符号(正负号)的96位整数。
 
<三> 字节 / 字符 / 字符串型
(1)Byte字节型
   这个类型的数据是从0~255的无符号整数,用来声明二进制的变量,但显示的值为十进制的。如果要声明的变量包含二进制数据,通常将其声明为Byte型的数。例如经常用到的颜色三组合红黄蓝即RGB三颜色分量。
 
(2)Char字符型
   这是VB.NET中的单字符数据类型,默认为字符是Unicode字符,占用2个字节。常常用来声明单字符的变量。如下:
   Dim charfirst  As Char
   Charfirst=”A”           ‘声明一个Char类型的变量charfirst,并且赋给了一个值A,字符用双引号包括
 
(3)String字符串型
   使用下列语句来声明一个字符串变量:
   Dim strtext  As  String
   可以在上述语句的最后面加上*,再加上一个正整数来指定这个字符串变量的长度。如下:
   Dim  strtext  As  String*20
   如果赋予字符串的长度超过了字符串的定长,那么Visual Basic.NET会自动截去超出的长度。
 
<四> 其它数据类型
(1)Boolean布尔型
   布尔型数据表示“真(True)”或“假(False)”这样的一种二值状态,简单的就是计算机中的0和1,当没有为该类型变量赋值时,初始值为Flase或0。VB.NET的布尔值实际上有3个,+/-1都是True,而0为Flase的值。
   一般情况应尽量使用True或Flase直接赋值或参与运算而不用+/-1或0代替。
   这种变量只占1个字节。
 
(2)Data日期型
   VB.NET中用Date型变量来保存日期信息。Data在内部存储为64位整数(注意这里的位指整数的位数而不是字节的位数)。如下:
   Dim dbdata1  As  Data
   Dbdata1=NOW ( )           ‘初始化dbdata1变量,得到当前日期。
 
(3)Object对象数据类型
   VB.NET用Object数据类型代替了VB 6.0的Variant变体数据类型。Object变量用作指向对象的指针。
   Object对象数据类型有几个特殊值。
   1、Error值:指出已发生的过程中的错误状态。
   2、DBNull值:空值,通常用于数据库应用程序,表示未知数据或丢失的数据。可以用ISBNull函数测试Object对象数据类型变量是否包含DBNull值。如下:
   If ISDBNull (x)  and  ISNull (y) then
     2=DBNull
   Then
     2=0
   End if
   3、Nothing值:有时需要知道是否已将一个值赋予所创建的变量。在赋值之前,Object对象类型变量具有值Nothing(也是空值,但表示什么都没有)。值Nothing是不同于0,零长度字符(“”)或DBNull值的特定值。当式中使用它,将其作为0或零长度字符串来处理,这要根据表达式来定。只要将任何值包括0,零长度字符串或DBNull()赋予Object对象类型变量,Nothing值就会消失。而将关键字Nothing赋予Object对象类型变量,就可将object对象类型变量恢复为Nothing。
 
(4)枚举类型
在程序设计中,有些数据无法直接用整型数或浮点型数来表示,必须经过某种转换,把本来不是简单地用整数来表示的问题硬用几个整数去描述,因而降低了程序的可读性。为此,Visual Basic.NET提供了枚举数据类型。当一个变量只有向种可能的值时,可以定义为枚举类型。所谓“枚举”,是指将变量的值一一列举出来,变量的值只限于列举出来的值的范围内。
声明格式如下:
[Public | Private] Enum name [As Type]
  membname1 [ = initexpr1 ]
  membname2 [ = initexpr2 ]
  
  membnamen [ = initexprn ]
End Enum
参数说明如下:
1、Public:可选。表示所定义的Enum类型在整个项目中都是可见的,在默认情况下,Enum类型被定义为Public。
2、Private:可选。表示所定义的Enum类型只在声明的模块中是可见的。
3、Enum:声明该枚举类型的关键字。
4、name:所定义的Enum类型的名称,必须合乎VB.NET的命名规则,在定义Enum类型的变量或参数时用该名称来指定类型。
5、type:可选。用来声明枚举及其所有成员的数据类型,可以是Byte、Integer等。如果不指定type,则默认为Integer。
6、membname:枚举成员的名称。
7、initexpr:可选。为创建枚举成员时计算和分配给该成员的表达式,该表达式可以包含文本、已定义的常数,另一枚举成员或文本、常数和枚举成员的任何组合,但不能在这个表达式里使用变量或函数,只能适当使用一些强制类型转换函数。
下面给出一些声明枚举变量的实例:
1、在Enum语句的格式中“initexpr”可以省略。在默认情况下,枚举中的第一个常数被初始化为0,其后的常数则初始化为比其前面的常数大1的数值。如:
Public Enum Days
  Sumday
  Monday
  Tuesday
  Wednesday
  Thursday
  Friday
  Saturday
End Enum
定义了一个枚举类型Days,它包括7个成员,都略了“initexpr”,因此常数Sunday的值为0,常数Monday的值为1,常数Tuesday的值为2,等等。
2、可以用赋值的语句显式地给枚举中的常数赋值,即不省略“initexpr”。所赋值可以是任何长整数,包括负数。如果希望用于小于0的常数代表出错条件,则可以给枚举常数赋一个负值。如:
Public Enum WorkDsys
  Saturday
  Sunday=0
  Monday
  Tuesday
  Friday
  Invalid=-1
End Enum
在上面的枚举中,常数Invalid显式地赋值-1,而常数Sunday被赋值0。因为Saturday是枚举中的第一个元素,所以也被赋值0。Monday的数值为1(比Sunday的数值大1),Tuesday的数值为2等等。
3、Visual Basic.NET将枚举中的常数数值看作整数。如果将一个浮点数值赋给一个枚举中的常数,Visual Basic.NET会将该数值取整为最接近的整数。
4、当对一个枚举中的常数赋值时,可以使用另一个枚举中的数值。
Public Enum WorkDays
  Sunday=0
  Monday
  Tuesday
  Wednesday
  Thursday
  Friday
  Saturday=Days.Sturday-6
  Invalid=-1
End Enum
这里的Days枚举的声明与前面的声明等同。
 
   注意:Enum语句只能在模块、命名空间或文件级出现。这就是说可以在源文件中或者在模块、类或结构内部声明枚举,但不能在过程内部进行声明。在定义Enum类型之后,就可以将其用于声明变量类型,过程参数和Function返回值。

相关教程