如何:测试两个对象是否相同 (Visual Basic)

如果有两个引用对象的变量,可以使用 IsIsNot 运算符,或同时使用这两个运算符来确定其是否引用同一实例。

测试两个对象是否相同

  • 使用 Is 运算符IsNot 运算符,并将两个变量作为操作数。

    Public Sub processControl(ByVal f As System.Windows.Forms.Form, 
        ByVal c As System.Windows.Forms.Control)
        Dim active As System.Windows.Forms.Control = f.ActiveControl
        If (active IsNot Nothing) And (c Is active) Then
            ' Insert code to process control c
        End If
        Return
    End Sub
    

建议根据两个对象是否引用同一实例来采取相应操作。 上例将控件 c 与窗体上的活动控件 f 进行比较。 如果没有活动控件,或者如果有一个不为 c 的控件实例,则 If 语句失败,且程序返回,不进行进一步处理。

使用 Is 还是 IsNot 是个人选择。 在指定表达式中,其中一个可能更易于阅读。

另请参阅