stocker les coordonnées X et Y

Salut je suis nouveau sur ce site et ont besoin d'aide avec un programme de gi de travail. le problème de la gi est que je ne peux pas semblent magasin de la chaîne et de deux nombres entiers (les coordonnées). j'ai cherché un autre code, mais ne vois pas comment les valeurs sont stockées. ci-dessous le code que j'ai utiliser. le code semble bien, mais lors de la tentative de stocké les valeurs que je ne peux pas mettre de multiplier des nombres entiers. merci pour votre temps

import java.util.HashMap;
public class map {

    class Coords {
        int x;
        int y;

        public boolean equals(Object o) {
            Coords c = (Coords) o;
            return c.x == x && c.y == y;
        }

        public Coords(int x, int y) {
            super();
            this.x = x;
            this.y = y;
        }

        public int hashCode() {
            return new Integer(x + "0" + y);
        }
    }

    public static void main(String args[]) {

        HashMap<Coords, Character> map = new HashMap<Coords, Character>();
        map.put(new coords(65, 72), "Dan");
    }

}
Pourquoi utilisez-vous un tel complexe algorithme de code de hachage? Pourquoi ne pas simplement utiliser la bonne vieille x + (some prime number) * y, par exemple x + 31*y? Notez également que votre equals mise en œuvre ne prend pas null valeurs ou illégale jette en compte.
Je pensais que ce hashCode n'était pas complexe, mais plutôt, de la plus simple en comparaison du premier numéro de hachage, correct? Il a aussi l'avantage de clairement montrer les coordonnées, séparés par un 0.
C'est peut-être moins complexe pour les humains à lire, mais il est certainement plus complexe (comme dans: plus de travail) de l'ordinateur. Pour le code critique, vous voulez hashCode à faire aussi peu que possible (tout en fournissant un décent de hachage). OPs version ne concaténation de chaîne et le numéro de l'analyse, alors que le premier numéro de hachage est juste un entier plus et un nombre entier de multiplication.

OriginalL'auteur Djchunky123 | 2012-07-30