Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
02 Июн 2023
2 мин
118

Преобразование первого символа каждого слова строки в прописную букву в Java

Часто возникает задача, когда необходимо преобразовать первый символ каждого слова в строке в прописную букву. Рассмотрим пример: есть строка «hello

Часто возникает задача, когда необходимо преобразовать первый символ каждого слова в строке в прописную букву. Рассмотрим пример: есть строка «hello world», и в результате преобразования она должна стать «Hello World».

На первый взгляд, встроенные функции Java для работы со строками, такие как toUpperCase() и toLowerCase(), кажутся подходящими для решения этой задачи. Однако они преобразуют все символы строки, а не только первые символы каждого слова.

Способ решения

Ниже представлен простой способ решения этой задачи с использованием класса Character в Java.

public String capitalizeWords(String source) {
    char[] chars = source.toCharArray();
    boolean wordStart = true;

    for (int i = 0; i < chars.length; i++) {
        if (Character.isWhitespace(chars[i])) {
            wordStart = true;
        } else if (wordStart) {
            chars[i] = Character.toUpperCase(chars[i]);
            wordStart = false;
        }
    }

    return new String(chars);
}

В этом коде функция capitalizeWords принимает исходную строку и преобразует ее в массив символов. Затем происходит проход по каждому символу в массиве. Если символ является пробелом, значит начинается новое слово и следующий символ нужно преобразовать в прописной. Если символ не является пробелом и он находится в начале слова, то он преобразуется в прописной и переменная wordStart устанавливается в false. В конце новый массив символов преобразуется обратно в строку и возвращается как результат.

Таким образом, при помощи данного кода можно преобразовать первый символ каждого слова в строке в прописную букву.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий