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 :

Remplir un tableau à partir du rang 1 et non de 0


Sujet :

Collection et Stream Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut Remplir un tableau à partir du rang 1 et non de 0
    Bonjour,

    j'ai besoin de définir un calendrier. Je définis chaque mois corresondant à un jour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String tabMois[] = {"Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Décembre"};

    Comment faire pour que tableau commence à 1 et non à 0 ?
    Bien sûr, il s'agit également ensuite de parcourir ce tableau à l'aide boucle for...


    Merci.

    Pirokkk.

  2. #2
    Membre expérimenté Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Points : 1 608
    Points
    1 608
    Par défaut
    Ben c'est pas possible un indice de tableau démarre à 0, c'est comme ça.

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Ok d'accord c'est bien ce qu'il me semblait.

    Il vaut donc mieux manipuler des tableaux de 0 à n dans le code et afficher à l'utilisateur les vrai valeurs (tab+1) ? C'est bien ça ?

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour,
    Citation Envoyé par Pirokkk Voir le message
    Il vaut donc mieux manipuler des tableaux de 0 à n dans le code et afficher à l'utilisateur les vrai valeurs (tab+1) ? C'est bien ça ?
    C'est à dire ? afficher que "tab[1] est égal à Janvier" par exemple ?
    Bref, je ne voies pas en quoi l'utilisateur serait exposé aux indices des tableaux, c'est plutôt le programmeur qui s'en occupe, non ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Bref, je ne voies pas en quoi l'utilisateur serait exposé aux indices des tableaux, c'est plutôt le programmeur qui s'en occupe, non ?
    Oui oui bien sûr c'est le programmeur qui s'en occupe ! Je voulais simplement avoir confirmation qu'il n'est pas bon d'utiliser des tableaux à partir de l'indice 1 ! (même si cela peut simplifier le raisonnement pour des compteurs de mois par exemple, il faut faire avec cette contrainte...).

  6. #6
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Citation Envoyé par Pirokkk
    Je voulais simplement avoir confirmation qu'il n'est pas bon d'utiliser des tableaux à partir de l'indice 1 !
    C'est une specificité du langage par rapport a Pascal par exemple ou tu peux choisir les bornes du tableau.

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Ok impec merci !!

  8. #8
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    et ton problème doit surement être que tu récupères un entier de 1 à 12 et que tu veux faire une corrélation entre cet entier et les mois.

    Je ne pense pas que tu ai choisi la bonne facon de les représenter, utiliser une table de hachage serait bien plus judicieux, tu n'aurai plus à te poser ce genre de questions : http://fmora.developpez.com/tutoriel...oduction/#L4.1
    J'ai justement pris cet exemple pour illustrer les HashTable.

    F.

  9. #9
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Oui merci mavina, justement j'avais déjà regarder ton tuto qui est très bien expliqué et utile ! Je me demandais si ça valait le coup que j'utilise une table de hachage....

    J'ai juste besoin de changer les mois de temps en temps et de faire des conditions sur certains mois. C'est pour cela que faire des tests sur le mois "0" ou dire que lorsqu'on est au mois "11" il faut revenir à 0....
    Mais bon, vous allez me dire, c'est pas grand chose lol !

    Mais justement, puisque tu me parles des tables, crois-tu qu'il serait judicieux d'en utiliser pour l'utilisation basique que je fais de mon tableau ??

    Merci.

  10. #10
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Ton but est d'associer une clé (numéro de mois) à une valeur (le nom du mois). C'est exactement ce que fait une table de hachage.

    Le but n'est pas de te dire "c'est basique alors je n'utilise pas de table de hachage" mais bien de te simplifier la vie. L'api collection est là pour ça, tu peux et tu dois l'utiliser autant que possible..

    F.

  11. #11
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    J'attendais de tester les HashTables avant de reposter un message !

    Oui donc cela marche très bien, et je peux maintenant manipuler mes numéros de mois correctement, en partant de 1 et allant jusqu'à 12, c'est impec les HashTables !

    En lisant tes deux tutos mavina, j'ai vu que tu parles de l'auto-boxing.

    Justement, est-il préférable de l'utiliser, ou faut-il rester dans les anciennes normes Java.

    Pour ma part, ça sera le choix entre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monHashtable.put(new Integer(1),"Janvier");
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monHashtable.put(1,"Janvier");
    Alors oui, comme tu dis, sans l'auto-boxing c'est lourd, mais au niveau de code, de la compatibilité et de la propreté, que faut-il mieux faire ??

  12. #12
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Au niveau de la compatibilité, ton code sera compatible java 5 et suppérieur.
    Java met à ta disposition l'auto-boxing.
    Coder monHashmap.put(1,"Janvier") ou coder monHashmap.put(new Integer(1),"Janvier"), c'est pareil, le compilateur (je suppose) derrière fait la transformation 1 --> new Integer(1).

    Pour moi utiliser l'autoboxing, ca allège le code et ca améliore la lisibilité.

    F.

  13. #13
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Ok ça marche !!

    Merci beaucoup, super aide !

    A+

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

Discussions similaires

  1. Remplir un tableau à partir d'un fichier
    Par alibm dans le forum Débuter
    Réponses: 1
    Dernier message: 17/02/2010, 18h37
  2. Remplir un tableau à partir d'une valeur initiale
    Par Maliciouss dans le forum Pascal
    Réponses: 9
    Dernier message: 13/12/2009, 15h46
  3. [E-97] Remplir un tableau à partir d'un formulaire
    Par Chicard dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 24/02/2009, 20h56
  4. remplir un tableau à partir d'un userform
    Par julien p dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/12/2007, 13h14
  5. [TP] Remplir un tableau à partir des données d'un autre tableau
    Par The future scientist dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 27/05/2007, 18h31

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