Sobes.tech
Junior — Middle

Kas saaksite selgitada, mis on hash-kood ja milleks seda kasutatakse?

sobes.tech AI

Vastus AI-lt

Hash-kood on fikseeritud suurusega arvväärtus, mis arvutatakse objekti sisu põhjal. Seda kasutatakse objektide kiireks võrdlemiseks ja otsimiseks, näiteks hash-tabelites või sõnaraamatutes.

Flutteris (ja Dartis) aitab hashCode meetod tõhusalt salvestada ja otsida objekte kogumites nagu Set või Map. Kui kaks objekti on võrdsed (== meetodi järgi), peavad nende hash-koodid vastama.

Näide:

class Person {
  final String name;
  final int age;

  Person(this.name, this.age);

  @override
  bool operator ==(Object other) =>
      identical(this, other) ||
      other is Person && other.name == name && other.age == age;

  @override
  int get hashCode => name.hashCode ^ age.hashCode;
}