#java
Как сделать обновляющуюся строку?
Например есть код
for(int x=0;x<100;x++) System.out.println(x);
Я не хочу чтобы был вывод в новую строку.
А в одну и ту же. Чтобы 1 в последовательности заменялось 2, и это было в одной строке
Ответы
Ответ 1
Сама Java очищать консоль не умеет. Но есть небольшая библиотечка, позволяющая отправлять управляющие последовательности в любую ANSI-совместимую консоль - Jansi: AnsiConsole.systemInstall(); System.out.print(Ansi.ansi().eraseScreen()); for (int x = 0; x < 100; x++) { try { System.out.print(Ansi.ansi().cursor(0, 0).a(x)); Thread.sleep(500); } catch (InterruptedException e) {} }Ответ 2
Используй \r вместо перевода строки: System.out.print(x + "\r");Ответ 3
Элементарное что можно сделать, каждую итерацию цикла, очищать консоль через обращения к bash, с помощью например того же класса System.Ответ 4
Если в одну строку то: for(int x=0;x<100;x++) System.out.print(x); разница в println и print Возможно нужно будет добавлять пробелы: for(int x=0;x<100;x++) System.out.print(x+" ");
Комментариев нет:
Отправить комментарий