Ich habe eine Zeichenkette: "hello good old world" und ich möchte jeden Anfangsbuchstaben eines jeden Wortes großschreiben, nicht den ganzen String mit .toUpperCase(). Gibt es eine vorhandene Java-Hilfe, die diese Aufgabe erfüllt?
Diese Frage hat bereits Antworten:
Antworten
Zu viele Anzeigen?
ndomanyo
Punkte
713
Hier ist der Code
String source = "hello good old world";
StringBuffer res = new StringBuffer();
String[] strArr = source.split(" ");
for (String str : strArr) {
char[] stringArray = str.trim().toCharArray();
stringArray[0] = Character.toUpperCase(stringArray[0]);
str = new String(stringArray);
res.append(str).append(" ");
}
System.out.print("Result: " + res.toString().trim());
Gustavo Samico
Punkte
521
tommyL
Punkte
509
Ich weiß nicht, ob es eine Funktion gibt, aber dies würde die Aufgabe erfüllen, falls es keine gibt:
String s = "here are a bunch of words";
final StringBuilder result = new StringBuilder(s.length());
String[] words = s.split("\\s");
for(int i=0,l=words.length;i<l;++i) {
if(i>0) result.append(" ");
result.append(Character.toUpperCase(words[i].charAt(0)))
.append(words[i].substring(1));
}
roy mathew
Punkte
7782
import org.apache.commons.lang.WordUtils;
public class CapitalizeFirstLetterInString {
public static void main(String[] args) {
// only the first letter of each word is capitalized.
String wordStr = WordUtils.capitalize("this is first WORD capital test.");
//Capitalize method capitalizes only first character of a String
System.out.println("wordStr= " + wordStr);
wordStr = WordUtils.capitalizeFully("this is first WORD capital test.");
// This method capitalizes first character of a String and make rest of the characters lowercase
System.out.println("wordStr = " + wordStr );
}
}
Sortie :
Dies ist der erste WORD Capital Test.
Dies ist der erste Wort-Kapital-Test.
- See previous answers
- Weitere Antworten anzeigen