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?

War es hilfreich?

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

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top