🗒 Задача¶
Реализуй extension функцию для класса String, которая будет возвращать количество гласных букв в строке. Назови функцию vowelCount. Например, для строки "hello" функция должна вернуть 2.
❌ Ошибки¶
✏️ Комментарии¶
Попробуй более короткий вариант с помощью `return this.count { it in vowels }`
this — это ключевое слово, которое ссылается на текущий объект, в контексте которого выполняется код. Через него можно обращаться к свойствам и методам этого объекта.
this в контексте экстеншн метода ссылается на строку (текущий объект String), для которого вызван метод vowelCount.
`this.count { it in vowels }` означает, что мы вызываем метод count у текущей строки (this), то есть у строки, для которой был вызван метод vowelCount.
Класс String обычно не создают просто так, применяй экстеншн прямо к строке) Строка и есть экземпляр класса, для которого нужно сделать расширение.
Попробуй провалиться в джавадок и посмотреть что и как принимает (и возвращает) extension метод `count` в классе _Strings. Можно написать более короткую форму, сразу возвращая результат без цикла, передавая лямбду со списком гласных букв.
Функция должна вернуть число, а не распечатать его. Логика внутри не должна пересекаться с интерфейсом пользователя.
Обрати внимание, сейчас ты возвращаешь просто количество символов. Но еще этот метод может принимать лямбду. Это значит, что передавая лямбду `count {}` внутри нее можно добавить проверку на наличие символа в списке гласных букв (что соответствует ТЗ).
// можно нажать ПКМ, скопировать изображение и вставить в комментарий через ctrl + V