龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VB开发 >

(空字串)、Null、Empty、与Nothing的区别

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
先回答以下问题吧!经过以下的叙述之后,变量A、B、C、D分别等于0、 ""、Null、Empty、Nothing的哪一个? DimA DimBAsString DimCAsInteger DimDAsObject A等于Empty,因为尚未初始化的「不定型变量」都
先回答以下问题吧!经过以下的叙述之后,变量A、B、C、D分别等于0、
  ""、Null、Empty、Nothing的哪一个?
  DimA
  DimBAsString
  DimCAsInteger
  DimDAsObject
  A等于Empty,因为尚未初始化的「不定型变量」都等于Empty。但如果检
  测A=""或A=0,也都可以得到True值。
  B等于"",因为尚未初始化的非固定长度「字串」都等于""。但请注意
  B<>Null。
  C等于0,这个还有问题吗?
  D等于Nothing,尚未设定有物件的「物件变量」都等于Nothing,但请不
  要使用D=Nothing,而要使用DIsNothing来判断D是否等于Nothing,
  因为判断是否相等的符号是Is不是=。
  最令人迷惑的地方是Null这个保留字,请看以下语句:
  PrintX=Null
  PrintX<>Null
  结果都是输出Null(不是True也不是False),这是因为任何一个运算式只
  要含有Null,则该运算式就等于Null,实际上想要判断某一数据是否为Null
  绝对不能使用:
  IfX=NullThen'永远都会得到Null
  而要使用:
  IfIsNull(X)Then
  哪一种数据会等于Null呢?除了含有Null运算式之外,就属没有输入任
  何数据的「数据字段」(在数据库中)会等于Null。->

精彩图集

赞助商链接