Я попытался скомпилировать следующий код:
public static void main(String[] args){
for (char c = 'a'; c <='z'; c = c + 1) {
System.out.println(c);
}
}
Когда я пытаюсь скомпилировать, он выдает:
Ошибка: (5, 41) Java: несовместимые типы: возможное преобразование с потерями
int to char
Дело в том, что это работает, если я пишу c = (char)(c + 1)
, c += 1
или c++
.
Я проверил, и компилятор выдает похожую ошибку при попытке char c = Character.MAX_VALUE + 1;
, но я не вижу способа, чтобы значение 'c' могло передать максимум типа 'char' в исходной функции.