[VB.NET] 0、""(空字串)、Null、Empty、与Nothing的区别
2009-09-19 10:25
483 查看
先回答以下问题吧! 经过以下的叙述之后, 变量 A、B、C、D 分别等于 0、
""、Null、 Empty、 Nothing 的哪一个?
Dim A
Dim B As String
Dim C As Integer
Dim D As Object
A 等于 Empty, 因为尚未初始化的「不定型变量」都等于 Empty。但如果检
测 A = "" 或 A = 0, 也都可以得到 True 值。
B 等于 "", 因为尚未初始化的非固定长度「字串」都等于 "" 。 但请注意
B<> Null。
C 等于 0, 这个还有问题吗?
D 等于 Nothing, 尚未设定有物件的「物件变量」都等于 Nothing, 但请不
要使用 D = Nothing , 而要使用 D Is Nothing 来判断 D 是否等于 Nothing,
因为判断 是否相等的符号是 Is 不是 = 。
最令人迷惑的地方是 Null 这个保留字, 请看以下语句:
Print X = Null
Print X <> Null
结果都是输出 Null(不是 True 也不是 False), 这是因为任何一个运算式只
要含有 Null , 则该运算式就等于 Null, 实际上想要判断某一数据是否为 Null
绝对不能使用:
If X = Null Then ' 永远都会得到 Null
而要使用:
If IsNull(X) Then
哪一种数据会等于 Null 呢? 除了含有 Null 运算式之外, 就属没有输入任
何数据的「数据字段」(在数据库中) 会等于 Null。
""、Null、 Empty、 Nothing 的哪一个?
Dim A
Dim B As String
Dim C As Integer
Dim D As Object
A 等于 Empty, 因为尚未初始化的「不定型变量」都等于 Empty。但如果检
测 A = "" 或 A = 0, 也都可以得到 True 值。
B 等于 "", 因为尚未初始化的非固定长度「字串」都等于 "" 。 但请注意
B<> Null。
C 等于 0, 这个还有问题吗?
D 等于 Nothing, 尚未设定有物件的「物件变量」都等于 Nothing, 但请不
要使用 D = Nothing , 而要使用 D Is Nothing 来判断 D 是否等于 Nothing,
因为判断 是否相等的符号是 Is 不是 = 。
最令人迷惑的地方是 Null 这个保留字, 请看以下语句:
Print X = Null
Print X <> Null
结果都是输出 Null(不是 True 也不是 False), 这是因为任何一个运算式只
要含有 Null , 则该运算式就等于 Null, 实际上想要判断某一数据是否为 Null
绝对不能使用:
If X = Null Then ' 永远都会得到 Null
而要使用:
If IsNull(X) Then
哪一种数据会等于 Null 呢? 除了含有 Null 运算式之外, 就属没有输入任
何数据的「数据字段」(在数据库中) 会等于 Null。
相关文章推荐
- VB中 0、""(空字串)、Null、Empty、与 Nothing 的区别
- VB中0、""(空字串)、Null、Empty、与 Nothing 的区别
- 0、""(空字串)、Null、Empty、与 Nothing 的区别
- vb 中 ""(空字串)、Null、Empty、与 Nothing 的区别
- Asp.Net中String.Empty、null和""的区别
- Asp.Net中String.Empty、null和""的区别
- Asp.Net中String.Empty、null和""的区别
- VB (空字串)、Null、Empty、与 Nothing 的区别
- Asp.Net中String.Empty、null和""的区别
- 0、""(空字串)、Null、Empty、与 Nothing 的区别
- Asp.Net中String.Empty、null和""的区别
- Asp.Net中String.Empty、null和""的区别
- C#中NULL,"",DBNULL,String.Empty,Convert.IsDBNull()的区别
- string.Empty、null、""、DBnull 四者的区别
- 0、(空字串)、Null、Empty、与Nothing的区别
- VB中Null、Empty、Nothing及vbNullString的区别
- String.Empty,NULL和""的区别
- String.Empty,NULL和""的区别
- string.empty,""以及null的区别
- String.Empty、null和""的区别