Einen String großschreiben

Java:
Einen String großschreiben

Wie:

Die Standardbibliothek von Java bietet keine direkte Methode, um ganze Strings auf einmal großzuschreiben, aber Sie können dies mit einer Kombination von integrierten Methoden erreichen. Für anspruchsvollere Bedürfnisse bieten Drittanbieterbibliotheken wie Apache Commons Lang einfache Lösungen.

Nutzung der integrierten Methoden von Java

Um einen String ohne externe Bibliotheken großzuschreiben, können Sie den String in Wörter aufteilen, den ersten Buchstaben jedes Wortes großschreiben und sie dann wieder zusammenfügen. Hier ist ein einfacher Ansatz:

public class CapitalizeString {
    public static void main(String[] args) {
        String text = "hello, world!";
        String capitalizedText = capitalizeWords(text);
        System.out.println(capitalizedText); // Ausgabe: "Hello, World!"
    }

    public static String capitalizeWords(String str) {
        char[] chars = str.toLowerCase().toCharArray();
        boolean found = false;
        for (int i = 0; i < chars.length; i++) {
            if (!found && Character.isLetter(chars[i])) {
                chars[i] = Character.toUpperCase(chars[i]);
                found = true;
            } else if (Character.isWhitespace(chars[i]) || chars[i]=='.' || chars[i]=='\'') { 
                found = false;
            }
        }
        return String.valueOf(chars);
    }
}

Dieser Codeausschnitt wandelt den gesamten String in Kleinbuchstaben um und iteriert dann durch jeden Charakter, um den ersten Buchstaben jedes Wortes großzuschreiben. Er betrachtet Leerzeichen, Punkte und Apostrophe als Worttrenner.

Nutzung von Apache Commons Lang

Die Bibliothek Apache Commons Lang bietet mit der Methode WordUtils.capitalizeFully() eine elegantere Lösung, die verschiedene Sonderfälle und Trennzeichen für Sie behandelt:

// Abhängigkeit hinzufügen: org.apache.commons:commons-lang3:3.12.0

import org.apache.commons.text.WordUtils;

public class CapitalizeString {
    public static void main(String[] args) {
        String text = "hello, world!";
        String capitalizedText = WordUtils.capitalizeFully(text);
        System.out.println(capitalizedText); // Ausgabe: "Hello, World!"
    }
}

Um diese Methode zu verwenden, müssen Sie die Bibliothek Apache Commons Lang zu Ihrem Projekt hinzufügen. Diese Bibliotheksmethode macht nicht nur den ersten Buchstaben jedes Wortes groß, sondern wandelt auch die restlichen Buchstaben in jedem Wort in Kleinbuchstaben um und sorgt so für ein konsistentes Muster der Groß- und Kleinschreibung im ganzen String.