Foxtable(狐表)用户栏目专家坐堂 → [讨论]Nothing


  共有3308人关注过本帖树形打印复制链接

主题:[讨论]Nothing

帅哥哟,离线,有人找我吗?
wyz20130512
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1242 积分:9380 威望:0 精华:0 注册:2013/5/12 9:22:00
[讨论]Nothing  发帖心情 Post By:2014/7/9 10:22:00 [只看该作者]

变量名 Is Nothing
变量名 = Nothing
这二者有什么区别和相同点?
请大神指教。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/9 10:24:00 [只看该作者]

 一样的。

 

 is nothing 在引用类型中使用,比如 datarow 比如 row

 

 = nothing 在值类型中使用,比如 string、integer、date


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/7/9 10:24:00 [只看该作者]

=nothing 只能用于值判断

例如 Dim l As List(of String)

只能用 l is nothing 来判断

 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1242 积分:9380 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(有点甜) 一样的。  is n...  发帖心情 Post By:2014/7/9 10:31:00 [只看该作者]

Dim d1 As Date
If d1 Is Nothing Then
    MessageBox.Show("日期d1的值为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    Output.Show("d1的值是: " & d1)
End If

上面代码会报错,Is换成=又能正常执行,且返回的结果是If后的第一条语句,不是说Date类型的变量不赋值时,其初值不为空吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/9 10:32:00 [只看该作者]

 看2楼,date是值类型。要用 =

 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1242 积分:9380 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(有点甜) 看2楼,date是值类型。要用 = ...  发帖心情 Post By:2014/7/9 10:40:00 [只看该作者]

Dim str As String
If str Is Nothing Then
    MessageBox.Show("字符串str的值为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    Output.Show("str的值是: " & str)
End If

那为何将数据类型换为String,同样是Is,却又能正常执行,不报错呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/9 10:44:00 [只看该作者]

 String是特殊类型,既是值类型又是引用类型


 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1242 积分:9380 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(有点甜) String是特殊类型,既是值类型...  发帖心情 Post By:2014/7/9 12:23:00 [只看该作者]

 哦!明白了,谢谢!除了String外,还有哪些即是值类型也是引用类型的呢?

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/7/9 14:13:00 [只看该作者]

没了.

 回到顶部