Bonjour
J'ai quelques soucis pour définir la méthode hashCode(). En effet un objet de ma collection doit être identifié à partir de deux propriétés num1 et num2. Pour equals ça va par contre pour hashCode je suis un peu bloqué.
Version imprimable
Bonjour
J'ai quelques soucis pour définir la méthode hashCode(). En effet un objet de ma collection doit être identifié à partir de deux propriétés num1 et num2. Pour equals ça va par contre pour hashCode je suis un peu bloqué.
Merci pour le lien.
Mais ce que je trouve est un peu trop général par rapport à mon exemple et je me perds dans le sens de certaines phrases. :
Si x est une clé x(i) représente quoi ? Je crains passer davantage de temps pour comprendre la suite. :aie:Citation:
En effet, si à chaque clé x , correspond h(x) l'endroit où se trouve x dans la table de hachage. L'expression de la fonction de Hachage est :
h(x)=[x(1)*B^(l-1) + x(2)*B^(l-2)....+x(l)] mod N
Pour B et N je ne vois non plus à quoi ils correspondent.
En même temps, si tu regardes la question jusqu'à la fin, tu vois un exemple de code tout simple :roll:
Dans ton cas, ça donnerait :
Code:
1
2
3
4
5
6
7
8
9 public int hashCode() { int result = 7; final int multiplier = 17; result = multiplier * result + attribut1; result = multiplier * result + attribut2; return result; }
J'ai pourtant tout lu mais j'arrivais pas faire le lien entre la formule générale et l'exemple que tu viens de citer.
Merci pour l'aide.