Использование \n в качестве разделителя выводит дополнительную пустую строку

У меня есть следующий код:

Scanner input = new Scanner(System.in);
input.useDelimiter("\n")
System.out.println(input.next());
System.out.println("end");

когда я запускаю его и набираю "апельсиновое яблоко", то вводишь, он напечатает

апельсиновое яблоко

конец

вместо

апельсиновое яблоко
конец

это то, что я на самом деле хотел напечатать. Я понятия не имею, почему он продолжает печатать лишнюю пустую строку. Как я могу это исправить?

2 ответа

System.out.println уже делает новую линию в отличие от System.out.print который не Так когда System.out.println используется с \n Вы делаете 2 новые линии.

System.out.println автоматически перемещает курсор на следующую строку, и "\n" также делает то же самое. Таким образом, в вашей программе вы используете обе, поэтому вводятся 2 новые строки. Либо используйте System.out.println, либо используйте System.out.print с "\n".

Другие вопросы по тегам