2010-10-22 5 views
3

Possible en double:
Capitalize First Char of Each Word in a String JavaFaire le caractère suivant d'un espace comme capital

J'ai une chaîne "abc def ghi", je veux faire comme "Abc Def Ghi" .De même J'ai aussi une chaîne comme "abc def" et je veux le faire "Abc Def". En Java comment est-ce possible?

+0

Pouvez-vous préciser si vous êtes intéressé uniquement en caractères ascii? Si ce n'est pas le cas, la réponse ne sera pas si banale que cela puisse paraître. –

Répondre

2
System.out.println(
    org.apache.commons.lang.WordUtils.capitalize(
    "yellow fox jumped over brown foot" 
) 
); 

sortie:

Yellow Fox Jumped Over Brown Foot 
0

Cela ne peut être le plus efficace, mais peut vous donner un point de départ:

public String capitalize(String original) { 
     String[] parts = original.split(" "); 

     StringBuffer result = new StringBuffer(); 

     for (String part : parts) { 
      String firstChar = part.substring(0, 1).toUpperCase(); 
      result.append(firstChar + part.substring(1)); 
      result.append(" "); 
     } 

     String capitalized = result.toString(); 

     return capitalized.substring(0, capitalized.length()-1); 
} 
+0

Cependant la réponse de codaddict est beaucoup mieux :) –

Questions connexes