public static void main(String[] args){
System.out.println('\n'+'\r');
// WTF???
}
Может кто-нибудь объяснить, почему в данном случае на выходе будет число(23)? Заранее спасибо.
0
Комментарии (4)
популярные
новые
старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
The following conversion combines both widening and narrowing primitive conversions:
* byte to char
First, the byte is converted to an int via widening primitive conversion (§5.1.2), and then the resulting int is converted to a char by narrowing primitive conversion (§5.1.3).
Потому что char — в т.ч. целочисленный тип
Сложение 2-х char автоматически расширяется до int в данном случае, чтобы избежать переполнения
'\n' == 10, '\r' == 13
Сложение 2-х char автоматически расширяется до int в данном случае, чтобы избежать переполнения
'\n' == 10, '\r' == 13