Тип данных char в java основан на значениях ascii . Каждый символ, символ и целое число связаны со значением ascii . В вашем коде:
public class CharacterArithmeticExperiment {
public static void main(String[] args) {
char start = '1';
for(int i = 1; i < 500;i++){
System.out.printf("%c", start + i);
}
}
}
Здесь ascii значение '1' равно 49. В для цикла при добавлении i к start переменной start получает typecasted и становится 49. Таким образом, для первой итерации значение start + i = 50 и символ, связанный со значением 50 ascii, равен '2'. Таким образом, значения печатаются соответственно для следующих итераций.
Таким образом, рабочий код для печати символов может соответствовать значениям ascii следующим образом:
public class CharacterArithmeticExperiment {
public static void main(String[] args) {
char start = 'a';
for(int i = 0; i < 26 ;i++){
System.out.printf("%c", start + i);
}
}
}
ВЫХОД: abcdefghijklmnopqrstuvwxyz
для ссылки на таблицу значений ascii нажмите здесь