(空字串)、Null、Empty、与Nothing的区别
先回答以下问题!下列语句后,变量A,B,C,D中的哪一个分别等于0,“”,Null,Empty,Nothing?
Dim A
Dim b as string
Dim c as integer
Dim d as object
A等于空,因为所有未初始化的“未定义变量”都等于空。但是如果检测到A = " "或者A = 0,也可以得到真值。
B等于“”,因为所有未初始化的非固定长度“字符串”都等于“”。但是请注意B为空。
C等于0。这很简单,好吗?
D等于零,所有没有设置对象的“对象变量”都等于零。但是,不是用D = Nothing,而是用D是Nothing来判断D是否等于Nothing,因为判断相等的符号是Is而不是=。
最让人困惑的是保留字Null。请看下面的语句:Source:www.examda.com
print x = Null
print x Null
结果都是输出Null(既不是真也不是假)。这是因为任何表达式只要包含Null,就等于Null。其实要判断某个数据是否为Null,千万不能用:
如果X = Null那么'总会得到Null
而应该用:
如果IsNull(X)那么
哪种数据会等于Null?除了空表达式,没有数据输入(在数据库中)的“数据字段”将等于空。
0条评论