La documentación dice "Los elementos se comparan con el valor especificado,
utilizando el método Object.Equals. Si el elemento es de tipo no intrínseco
(definido por el usuario), se utiliza la implementación Equals de dicho
tipo."
Tengo el siguiente código:
using System;
class Persona
{
string nombre;
int edad;
public Persona(string nombre, int edad)
{
this.nombre=nombre;
this.edad=edad;
}
public bool Equals(Persona x)
{
if(nombre==x.nombre && edad==x.edad)
return true;
else
return false;
}
}
class MainClass
{
public static void Main(string[] args)
{
Persona []b={new Persona("ana",10),new
Persona("pepe",20)};
Persona c=new Persona("pepe",20);
Console.WriteLine(Array.IndexOf(b,c));
}
}
Pero el método Equals no se ejecuta. ¿Qué estoy haciendo mal?
Leer las respuestas