以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [讨论]Nothing (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53489) |
-- 作者:wyz20130512 -- 发布时间:2014/7/9 10:22:00 -- [讨论]Nothing 变量名 Is Nothing 变量名 = Nothing 这二者有什么区别和相同点? 请大神指教。 |
-- 作者:有点甜 -- 发布时间:2014/7/9 10:24:00 -- 一样的。
is nothing 在引用类型中使用,比如 datarow 比如 row
= nothing 在值类型中使用,比如 string、integer、date |
-- 作者:Bin -- 发布时间:2014/7/9 10:24:00 -- =nothing 只能用于值判断 例如 Dim l As List(of String) 只能用 l is nothing 来判断
|
-- 作者:wyz20130512 -- 发布时间:2014/7/9 10:31:00 -- 回复:(有点甜) 一样的。 is n... 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类型的变量不赋值时,其初值不为空吗? |
-- 作者:有点甜 -- 发布时间:2014/7/9 10:32:00 -- 看2楼,date是值类型。要用 = |
-- 作者:wyz20130512 -- 发布时间:2014/7/9 10:40:00 -- 回复:(有点甜) 看2楼,date是值类型。要用 = ... 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,却又能正常执行,不报错呢? |
-- 作者:有点甜 -- 发布时间:2014/7/9 10:44:00 -- String是特殊类型,既是值类型又是引用类型 |
-- 作者:wyz20130512 -- 发布时间:2014/7/9 12:23:00 -- 回复:(有点甜) String是特殊类型,既是值类型... 哦!明白了,谢谢!除了String外,还有哪些即是值类型也是引用类型的呢? |
-- 作者:Bin -- 发布时间:2014/7/9 14:13:00 -- 没了. |