System (Espacio de nombres)


Biblioteca de clases de .NET Framework
IEquatable<(Of <(T>)>) (Interfaz)

Actualización: Julio de 2008

Define un método generalizado, que implementa una clase o tipo de valor con el fin de crear un método específico del tipo para determinar la igualdad de instancias.

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)
Sintaxis

Visual Basic (Declaración)
Public Interface IEquatable(Of T)
Visual Basic (Uso)
Dim instance As IEquatable(Of T)
C#
public interface IEquatable<T>
Visual C++
generic<typename T>
public interface class IEquatable
J#
J# admite el uso de APIs genéricas pero no admite la declaración de nuevas API.
JScript
JScript no admite el uso de métodos ni tipos genéricos.

Parámetros de tipo

T

Tipo de objetos que se van a comparar.

Comentarios

Esta interfaz la implementan tipos cuyos valores se pueden igualar (por ejemplo, las clases numéricas y de cadena). Una clase o tipo de valor implementa el método Equals para crear un método específico del tipo que sea adecuado para determinar la igualdad de instancias.

ms131187.alert_note(es-es,VS.90).gifNota:

La interfaz IComparable<(Of <(T>)>) define el método CompareTo, que determina el criterio de ordenación de instancias del tipo que se está implementando. La interfaz IEquatable<(Of <(T>)>) define el método Equals, que determina la igualdad de instancias del tipo que se está implementando.

Los objetos de colección genéricos como Dictionary<(Of <(TKey, TValue>)>), List<(Of <(T>)>) y LinkedList<(Of <(T>)>) utilizan la interfaz IEquatable<(Of <(T>)>) al comprobar la igualdad en métodos como Contains, IndexOf, LastIndexOf y Remove. Debe implementarse para cualquier objeto que pudiera estar almacenado en una colección genérica.

Notas para los implementadores:

Reemplace el parámetro de tipo de la interfaz IEquatable<(Of <(T>)>) con el tipo que esté implementando esta interfaz.

Si implementa IEquatable<(Of <(T>)>), también debe invalidar las implementaciones de la clase base de Object..::.Equals(Object) y GetHashCode para que su comportamiento sea coherente con el del método IEquatable<(Of <(T>)>)..::.Equals. Si invalida el método Object..::.Equals(Object), se llama a su implementación invalidada también en las llamadas al método estático Equals(System.Object, System.Object) en la clase. Esto garantiza que todas las invocaciones del método Equals devuelvan resultados coherentes.

Ejemplos

Vea el ejemplo para el método IEquatable<(Of <(T>)>)..::.Equals.

Plataformas

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC, Xbox 360

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión

.NET Framework

Compatible con: 3.5, 3.0, 2.0

.NET Compact Framework

Compatible con: 3.5, 2.0

XNA Framework

Compatible con: 2.0, 1.0
Vea también

Referencia

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Se ha agregado más información detallada sobre el uso del método.

Mejora de la información.

Julio de 2008

Se han agregado notas para los implementadores.

Mejora de la información.

Etiquetas :


Page view tracker