Junior — Middle
.NET da obyektda GetHashCode metodini chaqirish natijasi nima?
sobes.tech AI
AIdan javob
.NET'dagi GetHashCode metodi, obyektlarni tezda taqqoslash uchun ishlatiladigan butun son qiymati (hash-kod) qaytaradi, masalan, Hash jadvalarida (Dictionary, HashSet) saqlashda. Standart holatda, u obyektning ichki holatiga asoslangan holda yaratiladi, lekin to'g'ri ishlashini ta'minlash uchun kolleksiyalarda va obyektlarni taqqoslashda qayta yozilishi mumkin.
GetHashCode va Equals ni birga qayta yozish misoli:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public override bool Equals(object obj)
{
if (obj is Person other)
return Name == other.Name && Age == other.Age;
return false;
}
public override int GetHashCode()
{
return HashCode.Combine(Name, Age);
}
}
Equals bilan teng deb hisoblangan obyektlar bir xil hash-kodga ega bo'lishi muhimdir.