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 :

Concaténations des String


Sujet :

avec Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2012
    Messages : 180
    Points : 73
    Points
    73
    Par défaut Concaténations des String
    salut,

    j'ai une class personne.java

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class personne
    {
     
     
    private String nom;
    private String prenom;
    .....
    ....
    }


    je veux développer une fonction qui prend en paramettre une liste des personnes et retourne les listes des noms des personnes sous forme de String séparer par virgule

    j'ai essayer avec ce 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
     
    public String getAllName(List<Personne> personnes)
    {
     
    String names="";
    foreach(Personne p:personnes)
    {
     
    names.concat(p.getNom());
    names.concat(",");
     
    }
     
    return names;
    }
    je veux savoir est ce que ce genre de code est la meilleur solution ou bien y'a til un autre moyen pour résoudre ce genre de problème


    merci d'avance

  2. #2
    Membre confirmé
    Avatar de Laine
    Femme Profil pro
    Doctorat informatique
    Inscrit en
    Mars 2013
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Algérie

    Informations professionnelles :
    Activité : Doctorat informatique

    Informations forums :
    Inscription : Mars 2013
    Messages : 238
    Points : 646
    Points
    646
    Par défaut
    Bonsoir

    Voici un précédant poste qui parle du même problème
    http://www.developpez.net/forums/d11...irgule-resolu/

    Tu y trouveras les informations dont tu as besoin

  3. #3
    Membre actif Avatar de Seb19
    Homme Profil pro
    Concepteur SOA
    Inscrit en
    Septembre 2005
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Concepteur SOA

    Informations forums :
    Inscription : Septembre 2005
    Messages : 217
    Points : 292
    Points
    292
    Par défaut
    Salut,

    Tu peux passer par les StringBuffer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    StringBuffer names = new StringBuffer();
    for (Personne p : personnes) {
        names.append(p.getNom());
        names.append(", ");
    }
    return names.toString();
    Attention, il faudra penser à supprimer la dernière virgule de ta chaine de caractère.
    Celui qui pose une question risque cinq minutes d'avoir l'air bête.
    Celui qui ne pose pas de question restera bête toute sa vie.(proverbe chinois)

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Version simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    	public static String getAllNameBasic(List<Personne> personnes) {
    		StringBuffer names = new StringBuffer();
    		for (int i = 0; i < personnes.size(); i++){
    			names.append(personnes.get(i).getNom());
    			//Si il y a un suivant
    			if((i+1)<personnes.size()){
    			    names.append(", ");
    			}
     
    		}
    		return names.toString();
    	};
    Version décomposé :
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    	public static String getAllNameComplexe(List<Personne> personnes){
    		List<String> listNom = getAllNameList(personnes);
    		return implodeArray((String[]) listNom.toArray(),", ");
    	}
     
    	public static List<String> getAllNameList(List<Personne> personnes){
    		List<String> toReturn = new ArrayList<String>();
    		for (Personne personne : personnes) {
    			toReturn.add(personne.getNom());
    		}
    		return toReturn;
    	}
     
    	/**
             * Method to join array elements of type string
             * 
             * @author Hendrik Will, imwill.com
             * @param inputArray
             *            Array which contains strings
             * @param glueString
             *            String between each array element
             * @return String containing all array elements seperated by glue string
             */
    	public static String implodeArray(String[] inputArray, String glueString) {
     
    		/** Output variable */
    		String output = "";
     
    		if (inputArray.length > 0) {
    			StringBuilder sb = new StringBuilder();
    			sb.append(inputArray[0]);
     
    			for (int i = 1; i < inputArray.length; i++) {
    				sb.append(glueString);
    				sb.append(inputArray[i]);
    			}
     
    			output = sb.toString();
    		}
     
    		return output;
    	}
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

Discussions similaires

  1. Concaténer des cellules de strings avec une matrice de valeurs
    Par procrastination dans le forum MATLAB
    Réponses: 3
    Dernier message: 16/10/2014, 13h25
  2. [Objective-C] Concaténation des strings
    Par tlili_info dans le forum Objective-C
    Réponses: 1
    Dernier message: 11/05/2013, 14h46
  3. concaténer une variable et des string
    Par une_tite_question dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/08/2010, 12h33
  4. concaténation des string
    Par yayasam dans le forum C#
    Réponses: 3
    Dernier message: 26/07/2010, 14h53
  5. Concaténation des string/unbounded_String
    Par mourbare dans le forum Ada
    Réponses: 5
    Dernier message: 08/07/2008, 08h50

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