IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

equivalent de HashMap


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Empty_body
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    681
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 681
    Par défaut equivalent de HashMap
    Salut,

    J'aimerais savoir si il existe un équivalent de HashMap mais qui permet de faire maMap.put(int,int). Le HashMap refuse les int en réclamant des objets, pour une application, j'ai besoin pouvoir mettre des entiers, je trouverai assez ridicule de les convertir en String par exemple pour les reconvertir en entier pas après.

    Merci.

  2. #2
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    ben convertit les en Integer, surtout qu'avec l'autoboxing ça devient vraiment plus embetant du tout ...

  3. #3
    Membre averti
    Inscrit en
    Février 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 19
    Par défaut
    c clair, avec l'autoboxing c'est vite fait maintenant :
    HashMap<Integer,Integer> ta_map=new HashMap<Integer,Integer>();
    apres tu peux faire une un ta_map.put(2,1) par exemple...

  4. #4
    Membre éclairé Avatar de Empty_body
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    681
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 681
    Par défaut
    Effectivement, c'est un truc auquel je n'avais pas pensé... D'un autre côté, c'est java 5... Et au boulot, on est toujours en 4 compatibilité avec les clients oblige... Donc, ça ne peut se faire, si?

  5. #5
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Empty_body
    Donc, ça ne peut se faire, si?
    Tu peux toujours te créer la classe toi même, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    class IntHashMap extends HashMap {
     
    	private Integer toObject(int i) {
    		return new Integer(i);
    	}
     
    	private int toInt(Object o) {
    		return ((Integer)o).intValue();
    	}
     
    	public int get(int key) {
    		Object res = get(toObject(key));
    		return toInt( res );
    	}
     
    	public int put(int key, int value) {
    		Object res = put( toObject(key), toObject(value) );
    		return toInt(res);
    	}
     
    }
    a++

  6. #6
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Citation Envoyé par Empty_body
    Effectivement, c'est un truc auquel je n'avais pas pensé... D'un autre côté, c'est java 5... Et au boulot, on est toujours en 4 compatibilité avec les clients oblige... Donc, ça ne peut se faire, si?
    Meuh si!

    En passant par la classe wrapper Integer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Map taMap = new HashMap();
     
    int taCle = 1; //exemple
    int taValeur = 2;
     
    taMap.put(new Integer(taCle), new Integer(taValeur));
    Pour récupérer une valeur dans la map et la passer en int :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    int taValeurRecup = ((Integer)taMap.get(new Integer(taCle))).intValue();
    C'est un peu plus lourd, mais c'est possible.


    Edit : grillé

Discussions similaires

  1. Equivalent des Java Hashmap en Visual c++
    Par Sallie dans le forum MFC
    Réponses: 10
    Dernier message: 12/05/2006, 10h20
  2. Equivalent des Java Hashmap en c++
    Par Sallie dans le forum C++
    Réponses: 4
    Dernier message: 11/05/2006, 17h58
  3. [Kylix] Equivalent ShellExec en CLX
    Par Anonymous dans le forum EDI
    Réponses: 7
    Dernier message: 14/08/2002, 11h55
  4. Equivalent à ExeName pour une DLL
    Par Smortex dans le forum Langage
    Réponses: 7
    Dernier message: 16/07/2002, 21h07
  5. [Kylix] equivalent winsock avec kylix
    Par Victor dans le forum EDI
    Réponses: 2
    Dernier message: 08/05/2002, 07h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo