覆盖以前的控制台输出

时间:2012-03-13 22:22:07

标签: java console

是否可以覆盖最后的System.out.println输出,所以我可以看一下数组中的变化或创建一个progessbar?

例如,如果我有这个课程:

class Main{
  public static void main(String[] args){
    for(int i = 0; i < 10; i++){
      for(int j = 0; j < i; j++){
        System.out.print("#");
      }
      System.out.println("");
    }
  }
}

我需要做些什么来创建这个简单的进度条,它显示在一行而不是10个单独的行中?

1 个答案:

答案 0 :(得分:2)

这适用于我的特定控制台(Windows),但它不是非常便携......

public class Test {
    public static void main(String[] args) throws Exception {
        for (int i = 0; i < 100; i++) {
            System.out.print("#");
            if (i % 20 == 0) {
                System.out.print("\r                    \r");
            }
            System.out.flush();
            Thread.sleep(100);
        }
    }
}

还有Console课程,但就我所见,这实际上并没有给你带来太多的收获......