\r
残念ながら、カーソルを上に移動するのに相当するものはありません。ただし、これは、ANSI 準拠の端末を使用していると想定できる限り、ANSI エスケープ シーケンスを使用して実行できます。
ANSI コードを使用してプログレス バーを印刷するには、次のようにします。
System.out.printf(((char) 0x1b) + "[1A\r" + "Item 1: %d ", progress1);
System.out.printf(((char) 0x1b) + "[1B\r" + "Item 2: %d ", progress2);
ANSI コードの唯一の問題は、ほとんどすべての端末が ANSI コードを使用しているのに対し、Win32 端末は使用していないことです。私はそれをテストしていませんが、組み込みの Windows ターミナルもサポートする必要がある場合は、このライブラリを調べると良いようです。これには、Windows 端末で同等の処理を行う JNI ライブラリが含まれており、JNI ライブラリと ANSI コードのどちらを使用するかを自動的に決定します。また、ANSI コードを少し使いやすくする方法もいくつかあります。