VB.NET-Liste (von X). Enthält Verhalten
-
09-09-2019 - |
Frage
Ich habe eine benutzerdefinierte Klasse als Schlüssel eingerichtet, die zwei Eigenschaften hat, X und Y
Ich habe so etwas Ähnliches:
Dim test As New List(of TestClass)
Dim key as New TestData
key._a = A
key._b = B
For Each a As TestClass In SomeCollection
If Not test.Contains(key) Then
'Do Stuff
End If
Next
Meine Frage ist diese:Wie verhält sich .Contains auf der Liste (von T)?Sucht es nach einer identischen Datenstruktur oder stimmt sie einfach mit einer der Eigenschaften meines Schlüssels überein?
Wenn Sie können, fügen Sie bitte einen Link hinzu, über den ich mir die entsprechende Dokumentation ansehen kann.
BEARBEITENIst die Contains-Methode typsicher?
Lösung
Es nutzt die Equals
Methode zur Identitätsprüfung.
Standardmäßig (sofern nicht überschrieben) Equals
kehrt zurück true
wenn zwei Referenzen identisch sind oder zwei Strukturen mitgliedsmäßig gleich sind.
Andere Tipps
Ich fragte nur die gleiche Frage gestern:)
Ihre Testclass implementieren sollte IEquatable (T) http://msdn.microsoft.com/en-us/library/ms131187 (VS.80) aspx Schnittstelle, um es sicher zu machen geben