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 :

Ajouter des valeurs à un tableau


Sujet :

Collection et Stream Java

  1. #1
    Membre régulier
    Profil pro
    ghfhrghjyej
    Inscrit en
    Février 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Algérie

    Informations professionnelles :
    Activité : ghfhrghjyej

    Informations forums :
    Inscription : Février 2007
    Messages : 87
    Points : 88
    Points
    88
    Par défaut Ajouter des valeurs à un tableau
    Bonjour,
    J'ai une question simple, bon voilà:
    Comment ajouter un élément a un tableau déjà existant sachant qu'au départ je ne connais pas la taille de mon tableau donc je dois à chaque fois redonner une taille à mon tableau voilà un bout de code; est -il juste ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    int tableau [];
    tableau =new int [taille ];
    for (i=0;i<taille;i++)
    tableau [i]=certaine valeur;
    tableau = new int [nouvelle taille];
    for( i=taille;i<taille+nouvelle taille;i++)
    tableau[i] = valeur;
    Si je fais comme ça mon nouveau tableau contiendra-il les valeurs que je lui ai affecté dans la première boucle ?
    Bon voilà je ne sais pas si j'ai été assez claire
    Merci d'avance

  2. #2
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Bonjour, pourquoi ne pas utiliser une ArrayList? ce serait tellement plus simple.

  3. #3
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Utilise le fonctionnement interne d'un ArrayList. Va voir le code source.
    Le principe : tu déclares un tableau avec une taille arbitraire de départ. Tu conserves un index de remplissage. A chaque ajout, tu incrémentes ton index. Dès que l'index arrive à la taille du tableau, construit un nouveau tableau temporaire de taille double du précédent, copie l'ancien tableau dans le temporaire via "System.arraycopy" puis affecte l'instance du tableau temporaire à ton tableau de départ.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  4. #4
    Membre régulier
    Profil pro
    ghfhrghjyej
    Inscrit en
    Février 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Algérie

    Informations professionnelles :
    Activité : ghfhrghjyej

    Informations forums :
    Inscription : Février 2007
    Messages : 87
    Points : 88
    Points
    88
    Par défaut
    Merci pour vos réponses mais je vais aussi travailler avec des matrices dans mon programme, est ce je peux trouver un équivalent à Arraylist pour les matrices ?, ou bien utiliser Arraylist avec des matrices ? Sinon j'ai trouvé dans le lien ci-dessous une manière d'agrandir des tableaux et je vais essayé de l'appliquer aux matrices
    http://java.developpez.com/faq/java/...randir_tableau

  5. #5
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Tu as d'autres combines pour agrandir un tableau dont les éléments sont des types simples.

    La première est une fausse combine, car elle se base sur des tableaux qui sont simplement recréés plus grand lorsqu'ils deviennent trop petits ; c'est tout ce qui concerne les flux style ByteArrayOutputStream, qui fonctionnent comme si on pouvait ajouter des bytes ad vitam eternam sans s'occuper de rien.

    La deuxième peut être nettement plus intéressante lorsque l'on a une grande quantité de données, et que l'on accepte de gérer un peu de tuyauterie ; elle se base sur la notion de Buffer, et c'est avec ça qu'il faut travailler pour les données simples, type int, char etc.

    Malheureusement, rien de spécifique pour les matrices. On peut pas tout avoir.
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  6. #6
    Membre régulier
    Profil pro
    ghfhrghjyej
    Inscrit en
    Février 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Algérie

    Informations professionnelles :
    Activité : ghfhrghjyej

    Informations forums :
    Inscription : Février 2007
    Messages : 87
    Points : 88
    Points
    88
    Par défaut
    Merci pour vos réponses

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

Discussions similaires

  1. [WD18] Ajouter des valeurs dans un tableau simple
    Par olihop dans le forum WinDev
    Réponses: 2
    Dernier message: 18/11/2014, 11h23
  2. Ajouter des valeurs dans un tableau
    Par Mrlaurent90 dans le forum BIRT
    Réponses: 4
    Dernier message: 09/03/2011, 10h55
  3. Réponses: 13
    Dernier message: 01/02/2006, 12h00
  4. [WD9] [Etats][Débutant] Ajouter des lignes à un tableau
    Par EpOnYmE187 dans le forum WinDev
    Réponses: 7
    Dernier message: 20/12/2005, 12h20
  5. [Tableaux]Ajouter des valeurs dans un tableau
    Par Antoine1183 dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 03/04/2005, 13h41

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