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 :

Déclaration dynamique dans une boucle


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Freeluvs
    Profil pro
    Inscrit en
    Février 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Février 2009
    Messages : 78
    Par défaut Déclaration dynamique dans une boucle
    Bonjour à tous,

    J'ai une petite question sur la déclaration des variables en java: j'utilise des variables déclarés au niveau de ma classe, et que j'utilise des les différentes méthode.
    Au niveau du nom elles ont toutes le même nom, il y a juste un numéro qui change. En gros ça donne un truc du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public blabla  
                {
                          	public JTextField rep1;
    	                public JTextField rep2;
    	                public JTextField rep3;
    	                public JTextField rep4;
    	                public JTextField rep5;
     
                            private maMethode() {}
                }
    Tout fonctionne très bien. Le truc, c'est que mes variables "rep" vont de 1 à 120, ce qui fait que ma partie déclaration est vraiment énorme.
    Ce que je voudrais savoir, c'est existe-t-il un moyen de les déclarer dans une boucle ?
    Du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for(i=0, i<120, i++)  public JTextField rep+i
    J'ai essayé plusieurs truc, mais rien n'a fonctionné.

    Si quelqu'un pouvait m'éclairer à ce sujet, ce srait vraiment sympa.
    Merci d'avance

  2. #2
    Membre émérite Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Par défaut
    Bonjour,
    tu peux déclarer en une seule fois un tableau de taille 120:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    public JTextField[] tabrep = new JTextField[120];
    Il restera a initialiser chacun de ces textField bien sur...

  3. #3
    Membre confirmé Avatar de Freeluvs
    Profil pro
    Inscrit en
    Février 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Février 2009
    Messages : 78
    Par défaut
    Salut Jidefix,

    Merci pour l'idée j'avais pas du tout pensé au tableau
    Mais du coup, ça veut dire que je dois changer le nom de mes variable ?
    Du genre "rep2" devient tabrep[2] ?

  4. #4
    Membre émérite
    Inscrit en
    Mars 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 848
    Par défaut
    Mais du coup, ça veut dire que je dois changer le nom de mes variable ?
    Du genre "rep2" devient tabrep[2] ?
    Oui, c'est l'idée.

    Pour être tout à fait exact, comme tes variables commençaient à rep1, rep2 devient tabrep[1] puisque les tableaux commencent à 0.

    Si le reste de ton code utilise déjà les 120 variables, je te souhaites bon courage

  5. #5
    Membre confirmé Avatar de Freeluvs
    Profil pro
    Inscrit en
    Février 2009
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Février 2009
    Messages : 78
    Par défaut
    Ok, bah merci en tout cas.
    Sachant que le fichier fait déjà 2000 lignes, je penses que la fonction Find/Replace de Eclipse va être mon amie.

    Merci a vous deux en tout cas, et bonne journée

  6. #6
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 691
    Par défaut
    Techniquement, ce que tu souhaites est faisable via réflexion. Mais c'est bien plus simple et propre d'utiliser un tableau comme on te l'as déjà proposé.

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

Discussions similaires

  1. [AC-2010] Déclaration d'une variable "dynamique" dans une boucle
    Par docjo dans le forum VBA Access
    Réponses: 2
    Dernier message: 27/11/2013, 23h08
  2. Création objet dynamique dans une boucle. [Correction de code]
    Par Rifton007 dans le forum ActionScript 3
    Réponses: 6
    Dernier message: 04/04/2011, 23h48
  3. Récuperer la taille d'un clip généré dynamiquement dans une boucle
    Par finalfx dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 20/03/2008, 22h35
  4. Onrollover dynamique dans une boucle
    Par tet2brick dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 17/01/2008, 14h06
  5. [FLASH 8] Changer label bouton dynamiquement dans une boucle
    Par Malau dans le forum ActionScript 1 & ActionScript 2
    Réponses: 5
    Dernier message: 03/05/2006, 16h55

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