如何:判斷兩個物件是否相同 (Visual Basic)
在 Visual Basic 中,如果兩個變數參考的指標相同 (也就是兩個變數指向記憶體中的相同類別執行個體),則這兩個變數參考會視為相同。 例如,在 Windows Forms 應用程式中,您可能會想要進行比較,以判斷目前的執行個體 (Me
) 是否與特定執行個體 (例如 Form2
) 相同。
Visual Basic 提供兩個運算子來比較指標。 如果物件相同,則 Is 運算子會傳回 True
;如果不同,則 IsNot 運算子會傳回 True
。
判斷兩個物件是否相同
判斷兩個物件是否相同
設定
Boolean
運算式以測試兩個物件。在您的測試運算式中,使用
Is
運算子,並以兩個物件作為運算元。如果物件指向相同的類別執行個體,則
Is
會傳回True
。
判斷兩個物件是否不同
有時候,您會想要在兩個物件不同時執行動作,合併 Not
與 Is
可能不太對 (例如 If Not obj1 Is obj2
)。 在此情況下,您可以使用 IsNot
運算子。
判斷兩個物件是否不同
設定
Boolean
運算式以測試兩個物件。在您的測試運算式中,使用
IsNot
運算子,並以兩個物件作為運算元。如果物件未指向相同的類別執行個體,則
IsNot
會傳回True
。
範例
下列範例會測試成對的 Object
變數,以查看其是否指向相同的類別執行個體。
Dim objA, objB, objC As Object
objA = My.User
objB = New ApplicationServices.User
objC = My.User
MsgBox("objA different from objB? " & CStr(objA IsNot objB))
MsgBox("objA identical to objC? " & CStr(objA Is objC))
上述範例會顯示下列輸出。
objA different from objB? True
objA identical to objC? True