Sobes.tech
Junior — Middle

¿Podría explicar qué es un código hash y para qué se utiliza?

sobes.tech AI

Respuesta de la IA

El código hash es un valor numérico de tamaño fijo que se calcula en función del contenido del objeto. Se utiliza para comparar y buscar objetos rápidamente, por ejemplo, en tablas hash o diccionarios.

En Flutter (y Dart), el método hashCode ayuda a almacenar y buscar objetos de manera eficiente en colecciones como Set o Map. Si dos objetos son iguales (según el método ==), sus códigos hash deben coincidir.

Ejemplo:

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;
}