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 un tableau de string à un tableau de string


Sujet :

Collection et Stream Java

  1. #1
    Membre du Club
    Profil pro
    Info
    Inscrit en
    Novembre 2009
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Info

    Informations forums :
    Inscription : Novembre 2009
    Messages : 60
    Points : 46
    Points
    46
    Par défaut Ajouter un tableau de string à un tableau de string
    Salut tous le monde !

    Premier message ici car je n'ai rien trouvé répondant à ma question.

    Pour situer le prob j'ai pour simplifier 2 longues chaines de caracteres value0 et value1 que je récupère d'en dehors de mon JAVA et que je split dans un tableau de strings:

    String[] res0;
    res0 = getParameter("value0").split("@");

    String[] res1;
    res1 = getParameter("value1").split("@");

    Pour info les chaines sont du genre :
    2009-01-01 00:39:39%13.2278@2009-01-01 00:52:12%13.2279@2009-01-01 01:34:43%13.2274 .... un ensemble de (date%valeur) séparés donc par un @.

    Ce que j'aimerais faire c'est de ces 2 tableaux de string n'en faire qu'un seul où les string de res1 viendraient se mettre à la suite de ceux de res0.

    Je sais pas si c'est possible de le faire en conservant le format tableau de string ou s'il faut passer à un format de stringbuffer (mais alors comment ?) ou encore de Arraylist ... ?

    Merci pour votre aide !

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Rien de très direct à ma connaissance, mais ça se programme assez bien :

    Solution 1: directe, mais risque de s'embrouiller dans les indexes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // Créer un tableau de la bonne taille
    String[] res = new String[res0.length + res1.length];
    // Copier res0 au début
    System.arraycopy(res0, 0, res, 0, res0.length);
    // Copier res1 après
    System.arraycopy(res1, 0, res, res0.length, res1.length);
    Solution 2: peu de risque de bugs, mais construit une List intermédiaire de la taille des infos

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // Crée liste vide
    List<String> resL = new ArrayList<String>();
    // Insère res0
    resL.addAll(Arrays.asList(res0));
    // Insère res1
    resL.addAll(Arrays.asList(res1));
    // Crée tableau correspondant
    String[] res = resL.toArray(new String[resL.size()]);
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Profil pro
    Info
    Inscrit en
    Novembre 2009
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Info

    Informations forums :
    Inscription : Novembre 2009
    Messages : 60
    Points : 46
    Points
    46
    Par défaut
    Magnifique !

    Merci pour la rapidité et les deux me plaisent donc mon critère sera leur rapidité ... tu as une idée du moins couteux en cpu ? si on considère des listes très grandes.

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    En CPU comme en mémoire, la solution 1 est plus efficace.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Convertir une string en tableau de caractères
    Par alainpeniche dans le forum C++
    Réponses: 4
    Dernier message: 06/01/2007, 20h00
  2. String comme tableau de caracteres
    Par malek_dz77 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 10/12/2005, 19h11
  3. char *, string et tableau statique ou dynamique
    Par salseropom dans le forum C
    Réponses: 2
    Dernier message: 05/12/2005, 11h33
  4. [Info]Créer un tableau de String à partir d'autres String
    Par Nasky dans le forum Collection et Stream
    Réponses: 21
    Dernier message: 06/07/2005, 11h46
  5. problème our passer des string dans tableau d'int
    Par Battosaiii dans le forum C++
    Réponses: 9
    Dernier message: 15/07/2004, 17h42

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