Следующий код
System.out.println("Start");
String s = "";
//936 * 5 = 4680 characters
for (int i = 0; i < 937; i++){
s += "1234 ";
}
System.out.println(s);
System.out.println("End");
создает пустую строку между «Start» и «End» на консоли java под Windows, но работает должным образом при работе с MacOS или Linux. То же самое применяется при записи в файл. использования sysout. Я пробовал несколько компьютеров с Windows. Неважно, выполняю ли я метод через eclipse или через cmd.
Когда вы меняете «1234» на «1234» или «12g4» или когда число пробегов больше / меньше 936, работает s, как и ожидалось, со всеми ОС.
Кто-нибудь может подтвердить это / есть ли известная ошибка, связанная с этой проблемой?