public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s = reader.readLine();
Boolean up = true;
for (char c : s.toCharArray()) {
if (up) c = toUpperCase(c);
up = false;
if (c == ' ') {
up = true;
}
System.out.print(c);
}
}
}
Решение содрал, но не могу понять как реализован bollean
Sergey Vladimirovich
9 уровень
Объясните пожалуйста решение
Архивный
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #598481
30 апреля 2019, 13:35
булева (логическая) переменная хранит либо true, либо false.
Перебираешь символы. если текущий символ - пробел, то на следующей итерации выводишь символ в верхнем регистре, иначе на следующей итерации выводишь сам символ.
конструкция if (up) это то же самое, что и if (up == true). Дело в том, что оператор сравнения "==" возвращает также true или false, т.е. булеву переменную. У if в условии должно быть как раз булево значение, поэтому сравнивать с true - просто бессмысленно.
Строго говоря, в задаче написано, что требуется заменять в тексте символы, и результат замены выводить на экран, а у тебя просто выводятся на экран измененные символы, но это я придираюсь.
+1