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

Java Discussion :

Première lettre d'un mot en majuscule


Sujet :

Java

  1. #1
    Membre averti Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Points : 312
    Points
    312
    Par défaut Première lettre d'un mot en majuscule
    Bonjour,

    Je suis bloqué sur un truc tout con. Je souhaite simplement mettre le première lettre d'un mot en majuscule. Je suis certain qu'il existe déjà une méthode dans les librairies Java qui permette cela mais en tout cas pas dans la classe String...

    Avez-vous une idée ?

    Merci d'avance
    "Wash me away Clean your body of me Erase all the memories They'll only bring us pain And I've seen All i'll ever need"

  2. #2
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Citation Envoyé par danyboy85
    Bonjour,

    Je suis bloqué sur un truc tout con. Je souhaite simplement mettre le première lettre d'un mot en majuscule. Je suis certain qu'il existe déjà une méthode dans les librairies Java qui permette cela mais en tout cas pas dans la classe String...

    Avez-vous une idée ?

    Merci d'avance
    Je ne crois pas qu'il y ait quelque chose de standanrd, mais c'est pas spécialement compliqué à faire

    Je te donne quelques pistes :

    tu peut employer la méthode toCharArray de la classe String pour récupérer un tableau de char de ta chaine de caractères
    tu peut employer Character.toUpperCase(char a) pour mettre un caractère en majuscule
    tu peut employer le constructeur String(char[] characters) pour former une string avec un tableau de caractères

  3. #3
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Voici un code qui marche moyennant une vérification que la chaine ne soit pas vide :

    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
     
    /*
     * PremiereLettreMajuscule.java
     *
     * Crée le 15 décembre 2006, 16:41
     *
     *
     */
     
    package developpez;
     
    /**
     *
     * @author Anis Frikha
     */
    public class PremiereLettreMajuscule {
     
        /** Crée une nouvelle instance de  PremiereLettreMajuscule */
        public PremiereLettreMajuscule() {
        }
     
        public static void main(String[] args) {
            String chaine="bonjour";
            String chaineMaj=chaine.replaceFirst(".",(chaine.charAt(0)+"").toUpperCase());
            System.out.println(chaineMaj);
        }
    }
    Par contre ,je ne suis pas sùr que ça soit la manière la plus élégante de faire


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  4. #4
    Membre averti Avatar de danyboy85
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Points : 312
    Points
    312
    Par défaut
    Bon OK, c'est vrai que c'est simple mais j'étais persuadé que cela existait en standard...

    Pour info, voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    String chaine = "abcdefgh";
    char[] char_table = chaine.toCharArray();
    char_table[0]=Character.toUpperCase(char_table[0]);
    chaine = new String(char_table);
    Mon problème est résolu !!!
    "Wash me away Clean your body of me Erase all the memories They'll only bring us pain And I've seen All i'll ever need"

  5. #5
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    humm...je crois que ma méthode est plus concise que la tienne


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut StringUtils
    Si vous utilisez StringUtils (org.apache.commons.lang), il est possible d'utiliser la fonction capitalize()

  7. #7
    Membre expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Points : 3 083
    Points
    3 083
    Par défaut
    Citation Envoyé par afrikha Voir le message
    humm...je crois que ma méthode est plus concise que la tienne
    Plus concise mais moins performante à cause de l'utilisation d'une expression régulière. C'est un peu exagéré pour ce genre de chose

    Voilà la mienne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	public static String capitalizeFirstLetter(String value) {
    		if (value == null) {
    			return null;
    		}
    		if (value.length() == 0) {
    			return value;
    		}
    		StringBuilder result = new StringBuilder(value);
    		result.replace(0, 1, result.substring(0, 1).toUpperCase());
    		return result.toString();
    	}
    Comment ça ? La réponse à ton problème n'est ni dans la faq, ni dans les tutos, ni dans sources ??? Etonnant...
    De la bonne manière de poser une question (et de répondre).
    Je ne fais pas de service par MP. Merci (...de lire les règles...).
    Ma page dvp.com

  8. #8
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Avril 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Avril 2021
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par danyboy85 Voir le message
    Bon OK, c'est vrai que c'est simple mais j'étais persuadé que cela existait en standard...

    Pour info, voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    String chaine = "abcdefgh";
    char[] char_table = chaine.toCharArray();
    char_table[0]=Character.toUpperCase(char_table[0]);
    chaine = new String(char_table);
    Mon problème est résolu !!!
    un code concis, je te l'accorde;
    et s'il s'agissait des deux dernierre lettre :-) ????

  9. #9
    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
    ?

    Il me semble très facile d'adapter le code pour gérer les deux dernières lettres à la place.

    Tu essayais de dire quelque chose ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. [XL-2003] Metrre la première lettre de chaque mot en MAJUSCULE
    Par Un Internaute dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/06/2015, 18h19
  2. Mettre en majuscule la première lettre d'un mot
    Par bobosh dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 05/09/2008, 07h55
  3. Réponses: 6
    Dernier message: 14/02/2007, 20h00
  4. [VB.NET] Mettre la première lettre d'une String en majuscule
    Par annedeblois dans le forum Windows Forms
    Réponses: 6
    Dernier message: 27/10/2006, 17h47
  5. requête SQL: sélection de la première lettre d'un mot
    Par Claire07 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/07/2006, 11h41

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