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

Langage Java Discussion :

Concaténer deux String


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 346
    Par défaut Concaténer deux String
    Bonjour, tout le monde

    Je veux concaténer deux String s1 et s2 dans s3
    Je ne sais quelle est la meilleure méthode parmi ses deux (gain d’espace, temps d’exécution…)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String s1=”Salut ”,
    String s2 =” tout le monde”;
    String s3;
    Est ce que c’est obligatoire d’initialiser un String si oui est ce que je dois l’initialiser par ” “ ou bien par null ?

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    1) concat est plus rapide, si vous vous contentez d'une seul concaténation. En pratique on se pose jamais la question, on utilise "+", c'est plus facile à lire.
    2) tout variable, en java, doit être initialisée avant usage. Les champs, quand à eux, sont initialisé par défaut à null si il n'y a pas d'initialisation explicite dans la déclaration ou le constructeur.

  3. #3
    Membre expérimenté Avatar de Roy Miro
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 273
    Par défaut
    Bonjour,

    Pour compléter ce qui a été dit:
    si tu fais une concaténation dans une boucle, il est très fortement conseiller d'instancier un StringBuilder (ou StringBuffer) puis d'utiliser la méthode append:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    StringBuilder sb = new StringBuilder("");
    for(...){
    sb.append("toto");
    }
     
    String s = sb.toString(); //totototototo....
    Si tu utilises l'opérateur '+' dans la boucle, tu occuperas la mémoire avec plein d'objet String obsolètes.

Discussions similaires

  1. Concaténer deux vectors de vector<vector<string>>
    Par maud4274 dans le forum Langage
    Réponses: 21
    Dernier message: 08/08/2014, 09h03
  2. concaténer deux STRING
    Par cenedra dans le forum C++
    Réponses: 4
    Dernier message: 04/08/2006, 01h18
  3. Concaténer deux variables ?
    Par glsn dans le forum ASP
    Réponses: 2
    Dernier message: 19/12/2003, 13h53
  4. [.NET VC++] ou exclusif entre deux String
    Par benoitB dans le forum MFC
    Réponses: 7
    Dernier message: 25/11/2003, 11h20
  5. Concaténation de String et Integer
    Par Ingham dans le forum Langage
    Réponses: 5
    Dernier message: 21/01/2003, 17h26

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