Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вопрос по java newGuess[i] = temp.charAt(i)-'0' ; что делает -'0' ?

Дарья Минчук Ученик (113), на голосовании 2 месяца назад
int guess = 12345;
String temp = Integer.toString(guess);
int[] newGuess = new int[temp.length()];
for (int i = 0; i < temp.length(); i++)
{
newGuess[i] = temp.charAt(i)-'0' ;
System.out.println(newGuess[i]);
}
Голосование за лучший ответ
KIlM Знаток (434) 3 месяца назад
-'0' преобразует символ в его числовое значение. В данном случае, temp.charAt(i) возвращает символ, представляющий цифру, а вычитание '0' конвертирует его в соответствующее целочисленное значение.

Например, если символ '5' имеет числовое значение 53 (в кодировке ASCII), после вычитания '0' получится значение 5.

Таким образом, строковое значение числа преобразуется в массив целочисленных значений цифр этого числа.
Похожие вопросы