VB.NET数据类型概念剖析
创始人
2024-06-20 19:01:49
0

VB.NET中的数据类型有很多特点,和其他语言有不同之处。那么怎样才能正确的理解这些数据类型来帮助我们提高开发效率呢?今天就先为大家介绍一下VB.NET数据类型的基础概念,作为大家的学习参考对象。

VB.NET数据类型之字符数据类型

字符数据类型是用来处理打印和显示字符的。Char包含单个字符,String则包含多个字符。VB.NET中Char和数字类型可以进行转换,但要通过Ascw和Chrw等函数来完成。如果类型检查开关被打开,则必须在声明时在单个字符后面加上值类型字符C,用以标识。例如下面语句:

  1. Option strict on  
  2. Dim Emaiin as char  
  3. Emailn=”@” //
    打开了类型检查开关,
    此时不可以将其转换为Char  
  4. Emailn=”@”C //
    成功转换 

String类型为零个或多个16位字符序列,每个字符取值为0~65 535。当字符串被填充了空格的时候,可以用这些函数来清除:Trim,Ltrim,Rtrim。其标识符类型字符为$,没有值类型符号。

其他VB.NET数据类型

布尔数据类型包含True和False两种值,在默认状态下是为False。这个数据类型中True的值为1,布尔类型没有值类型符号。如果将布尔值强制转换为非布尔类型时,代码中将带有升级警告。例如下面语句:

  1. Dim Sendagain as Boolean  
  2. Dim Number as Integer  
  3. Number=Sendagain 

转换以后为

  1. Dim Sendagain as Boolean  
  2. Dim Number as Integer  
  3. UPGRADE—WARNING:Boolean 
    Sendagain is being 
    converted into a unmeric  
  4. Number=Sendagain 

VB.NET数据类型中的Date类型是一个64位的有符号整数。在VB 6.0中Date以Double格式存储,能够作为Double类型的变量来操作。而在VB.NET中由于Date的类型存储为64位,所以无法再作为Double类型来进行操作,但却为两者的转换提供了相关的函数:ToOADate和FromOADate。在进行源代码升级时,升级工具没有办法自动检测到所有这种转换的情况,但是它会在相应的地方插入以上两个函数,例如语句:

  1. Dim daynum as Double  
  2. Dim day as Date  
  3. Daynum=day 

升级以后为

  1. Dim daynum as Double  
  2. Dim day as Date  
  3. Daynum=daY.ToOADate 

Date变量每加1,就代表着100ns的时间间隔,其中存储了从公元1年1月1日中午12点到现在的时间间隔。Date类型的变量或者是常量可以同时保存日期和时间。例如:

  1. somedate=#8/5/2002 8:38AM#; 

Date没有值类型符号,但是在编译时会把在#之间的值看作为Date。

对象类型是VB.NET数据类型中新增加的一个数据类型,原因是.NET采用了cLR命名规则,作用是避免跨语言开发时出现名称混乱。VB 6.0中默认的Variant数据类型,在VB.NET中变为Object类型。例如语句:

  1. Dim x As Variant 

升级以后为

  1. Dim x As Object 

如果变量声明为Obiect,则它可以指向任何程序可处理的对象,但是在声明时最好指定为特定的VB.NET数据类型,而不要指定为通用的Object。编程时应尽量使用明确的类,例如,使用TextBox而不使用Control可以更加方便地访问对象的属性和方法。Object是指向值的指针,它在任何情况均不包括值本身,由于是使用指针定位数据,所以处理起来会比已经确定位置的数据慢一点。Object也没有值类型字符。

【编辑推荐】

  1. 轻松掌握VB.NET设置IP技巧
  2. 几步解决VB.NET编写病毒
  3. VB.NET特殊操作符总结概述
  4. VB.NET操作符like作用体现
  5. VB.NET运算符代码示例解析

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...