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

avec Java Discussion :

Ecrire une liste dans un format précis


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut Ecrire une liste dans un format précis
    Bonjour,

    Je suis débutant en JAVA. Alors :

    J'ai une liste des noms {"hichem", "hamid", "hussem"} et je veux ré-afficher la liste comme ceci:

    {hichem;hamid;hussem}

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    public static void main(String[] args) {
    	// TODO Auto-generated method stub
     
    	String [] data={"hichem", "hamid", "hussem"};
     
    	String all="{";
     
    	for(String word : data)
    	{   System.out.println(word);
    	    all+=word+";";	 }
     
    	//System.out.println(all.charAt(20));
     
    	 all=all.replace(all.charAt(20), '}');
     
    	System.out.println(all);
    	}
    je trouve le résultat suivant :

    {hichem}hamid}hussem}

    et j'aimerai trouver ce résultat :
    {hichem;hamid;hussem}

    Merci d'avance.

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello, je t'avoue que je ne comprends pas pourquoi tu voudrais remplacer des trucs dans ta chaîne.

    Que se passe-t-il si tu n'appelles pas du tout replace() ? Genre tu enlèves la ligne complètement ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Que se passe-t-il si tu n'appelles pas du tout replace() ? Genre tu enlèves la ligne complètement ?
    Merci pour votre réponse.

    Si j'enlève la ligne où j'ai appelé la fonction replace(). j'ai le résultat suivant : {hichem;hamid;hussem;}

    Donc je dois supprimer la dernière ";" c'est à cause de ça que j'ai met all.charAt(20) pour définir la dernière ";"

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Moi je te demande pourquoi tu fais replace(), pas pourquoi tu fais all.charAt(20).

    Mais bon, plutôt que d'enlever le dernier ; après coup, les gens trouvent plus simple de ne pas mettre le dernier ;
    C'est à dire, quand tu es sur le point de mettre un ; tu vérifies si par hasard ce serait pas le dernier, et dans ce cas finalement tu le mets pas. C'est plus simple.
    Ou l'inverse : tu mets un ; devant chaque élément sauf si c'est le premier élément. Encore plus simple.

    Mais bon, si tu te demandes pourquoi Java ne fournit pas un moyen plus pratique : il en fournit un.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String all = "{" + String.join(";", data) + "}";
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Moi je te demande pourquoi tu fais replace(), pas pourquoi tu fais all.charAt(20).

    Mais bon, plutôt que d'enlever le dernier ; après coup, les gens trouvent plus simple de ne pas mettre le dernier ;
    C'est à dire, quand tu es sur le point de mettre un ; tu vérifies si par hasard ce serait pas le dernier, et dans ce cas finalement tu le mets pas. C'est plus simple.
    Ou l'inverse : tu mets un ; devant chaque élément sauf si c'est le premier élément. Encore plus simple.

    Mais bon, si tu te demandes pourquoi Java ne fournit pas un moyen plus pratique : il en fournit un.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String all = "{" + String.join(";", data) + "}";

    Merci. ça marche bien

Discussions similaires

  1. Récupérer la date d'une cellule dans un format précis
    Par ochini dans le forum Macros et VBA Excel
    Réponses: 23
    Dernier message: 16/10/2015, 06h04
  2. Ecrire une liste dans un fichier .txt
    Par afifaNancy dans le forum Entrée/Sortie
    Réponses: 11
    Dernier message: 14/02/2011, 16h49
  3. Ecrire le contenu d'une List dans un fichier
    Par sabure dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 11/05/2006, 16h33
  4. [JSP] mettre une chaine dans un format precis
    Par logica dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 09/06/2005, 10h21
  5. Réponses: 5
    Dernier message: 03/02/2004, 14h20

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