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

Langage Java Discussion :

Comment avoir des noms d'objets différents ?


Sujet :

Langage Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 75
    Points : 59
    Points
    59
    Par défaut Comment avoir des noms d'objets différents ?
    bonjour à tous,

    Voici ce que je voudrais faire :

    Si l'utilisateur tape "3", je voudrais instancier 3 fois la même classe
    mais avec un nom d'objet différent.

    Si l'utilisateur tape "5", je voudrais instancier 5 fois la même classe
    mais avec un nom d'objet différent.

    etc...


    Exemple :

    ça c'est la méthode bourrin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(args.equals("3"))
    {
    	byte[] tab0 = new byte[SIZE];
    	byte[] tab1 = new byte[SIZE];
    	byte[] tab3 = new byte[SIZE];
    }
    mais je voudrais un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for(int i=0;i<args.length;i++)
    {
    	byte[] tab+i = new byte[SIZE];
    }
    sauf qu'on peut pas mettre une variable dans un nom d'objet.


    Merci pour votre aide.

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Ce que tu peux faire c'est utiliser une arrayList
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ArrayList <MonObjet> liste=new ArrayListe();
    for(int i=0;i<args.length;i++)
    {
    	liste(i) = new MonObjet();
    }
    autant l'hiver éclate que l'hétéroclite
    le vrai geek c'est celui qui croit qu'il y a 1024 mètres dans un kilomètre

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Utilise une structure de données
    Salut,
    En fait le probleme que tu rencontres est un classique en java .
    Comme te l'a proposé le premier intervenant, tu pourrais utiliser une structure de données plus performante qu un tableau . les opérations d'ajouts et de suppression d'objet se font de facon plus elegante.

    regarde l'API JAVA.

    A+

  4. #4
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 75
    Points : 59
    Points
    59
    Par défaut
    Merci pour vos réponses.

    Merci pour la proposition des ArrayLists.

    J'y avais déjà pensé mais j'aurais voulu si possible une autre solution plus "propre" avec pourquoi pas l'utilisation d'un design pattern (factory?).

  5. #5
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Et pourquoi n'utiliserais-tu pas un byte[][]?

  6. #6
    Membre averti Avatar de Rayndell
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 289
    Points : 323
    Points
    323
    Par défaut
    Le factory ne résoudrait pas le problème. Voilà ce que je te propose si tu veux vraiment associer des noms à tes objets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    HashMap<String, Objet> hm = new HashMap<String, Objet>();
    for(int i=0; i<Integer.parseInt(args[0]); i++){
        hm.put("Objet " + (i + 1), new Objet());
    }
    "Et tu comprendras pourquoi mon nom est l'Eternel, quand sur toi s'abattra la colère du Tout-puissant."

  7. #7
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 75
    Points : 59
    Points
    59
    Par défaut
    ok c'est ce que je voulais.

    merci beaucoup.

    a+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/02/2014, 16h11
  2. Réponses: 1
    Dernier message: 02/06/2011, 16h17
  3. [XL-2003] Comment avoir des lignes de différentes couleurs dans un combobox
    Par MichaSarah dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/10/2009, 05h10
  4. Réponses: 1
    Dernier message: 19/11/2007, 23h48
  5. [ODBC] Comment mettre à jour 2 bases ayant des noms de champs différents ???
    Par Alexlesilex dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/05/2006, 17h08

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