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

avec Java Discussion :

utiliser une variable comme nom d'objet! est-ce possible?


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 26
    Points : 20
    Points
    20
    Par défaut utiliser une variable comme nom d'objet! est-ce possible?
    Bonjour, voici mon problème.

    Je dois concevoir un programme dans le cadre d'un cours de java et je dois, dans ce dernier, faire créer plusieurs objets à l'utilisateur via l'utilisation de la console. Une fois fait, je dois gérer ces objets dans des tableau. Mais en bref, puis-je utiliser une variable qui sera entré par l'utilisateur comme nom d'objet.

    Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Contenant c1 = new Contenant (param,param,param);
    Mais au lieu de sa je voudrais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Contenant "je veux placer ma vaiable ici" = new Contenant (param,param,param);
    Mon problème est que si je place le nom d'une variable de mon programme Java ne la reconnais pas comme tel mais seulement comme un simple nom d'objet.
    Merci d'avance à tout ceux qui répondrons à ce message!

    Pat

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 021
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 021
    Points : 2 278
    Points
    2 278
    Par défaut
    Salut,
    est-ce que tu ne peux pas utiliser une HashMap ?
    Tu mets ce que l'utilisateur a tapé en clé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Map<Contenant> map = new HashMap<Contenant>();
    map.put(variableUtilisateur, new Contenant (param,param,param));
    Ensuite tu récupères l'objet avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    map.put(variableUtilisateur);
    Sans ça, je crois pas que tu puisses créer de variables dynamiques en Java à moins que je n'aie pas bien compris ta question ^^
    Vive les roues en pierre

  3. #3
    Expert confirmé

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Points : 4 324
    Points
    4 324
    Par défaut
    Citation Envoyé par Djakisback Voir le message
    Ensuite tu récupères l'objet avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    map.put(variableUtilisateur);
    Ce n'est qu'une petite faute d'innatention, mais ca ne serait pas plutôt la chose suivante ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    map.get(variableUtilisateur);
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

  4. #4
    Membre actif

    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Points : 264
    Points
    264
    Par défaut
    Pour ma part, j'ai relever une erreur à ce niveau.

    Citation Envoyé par Djakisback Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Map<Contenant> map = new HashMap<Contenant>();
    map.put(variableUtilisateur, new Contenant (param,param,param));
    En effet, la classe HashMap est décrite comme ceci:
    Class HashMap<K,V>

    Cela signifie que pour respecter le prototype générique, il faut lui passer 2 éléments et non pas 1 comme présenté ci-dessus. C'est pourquoi je propose la correction suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Map<String, Contenant> map = new HashMap<String, Contenant>();
    map.put(variableUtilisateur, new Contenant (param,param,param));
    Sachant bien entendu que "variableUtilisateur" doit être de type String.

  5. #5
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 021
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 021
    Points : 2 278
    Points
    2 278
    Par défaut
    Arf, que d'erreurs en 3 lignes que je tappe
    Vive les roues en pierre

  6. #6
    Expert confirmé

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Points : 4 324
    Points
    4 324
    Par défaut
    Citation Envoyé par Djakisback Voir le message
    Arf, que d'erreurs en 3 lignes que je tappe
    chacun son truc, moi c'est l'orthographe
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/04/2011, 09h21
  2. Utiliser une chaîne comme nom de méthode - est ce possible ?
    Par mikaelm dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 10/03/2008, 10h55
  3. [ProC][SQL] Utiliser une variable comme nom de curseur
    Par adiGuba dans le forum Interfaces de programmation
    Réponses: 1
    Dernier message: 06/12/2006, 11h55
  4. Utiliser une variable comme nom de fichier
    Par lo00_ dans le forum MATLAB
    Réponses: 1
    Dernier message: 28/06/2006, 13h57
  5. [curseurs] utiliser une variable comme nom de champ
    Par Christian31 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/09/2005, 14h12

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