vb 中 ""(空字串)、Null、Empty、与 Nothing 的区别
2013-06-24 11:42
183 查看
""(空字串)、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 等于 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。
先回答以下问题吧! 经过以下的叙述之后, 变量 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。
相关文章推荐
- [VB.NET] 0、""(空字串)、Null、Empty、与Nothing的区别
- VB中 0、""(空字串)、Null、Empty、与 Nothing 的区别
- VB中0、""(空字串)、Null、Empty、与 Nothing 的区别
- 0、""(空字串)、Null、Empty、与 Nothing 的区别
- 0、""(空字串)、Null、Empty、与 Nothing 的区别
- VB (空字串)、Null、Empty、与 Nothing 的区别
- VB中Null、Empty、Nothing及vbNullString的区别
- VB中Null、Empty、Nothing及vbNullString的区别
- 0、(空字串)、Null、Empty、与Nothing的区别
- VB中-惟一Null, Empty, Nothing, and vbNullString的区别
- 0、(空字串)、Null、Empty、与Nothing的区别
- Null, Missing, Empty, Nothing, vbNullString的区别
- 0、(空字串)、Null、Empty、与Nothing的区别
- 0、(空字串)、Null、Empty、与Nothing的区别
- Null, Empty, Nothing, and vbNullString的区别
- string.empty、null、和""的区别
- string.Empty&&"" && null 这者的区别
- C# 中 "",null,string.Empty 三者的区别
- String.Empty、null和""的区别
- String.Empty,NULL和""的区别