你的代码中“checkis(0)=obj1 is obj2”的意思是如果obj1和obj2引用的是同一个对象,则checkis(0)的返回值为“true”,否则为“false”。下面几句以此类推。
以下是MSDN中的备注:
Is运算符确定两个对象引用是否引用同一个对象。但是,它不执行值比较。如果 object1 和 object2 引用同一个对象实例,则 result 为 True;如果它们不引用同一个对象,则 result 为 False。该运算符和TypeOf…Is一样,也只适用于引用类型。
用法:
Dim i As String = "Hello"
Dim j AS String = "Hello"
Dim k as String = "Hello world"
Console.WriteLine(i Is j) '输出:True
Console.WriteLine(i Is k) '输出:False
k = j
Console.WriteLine(i Is k) '输出:True