如何在java中同一行打印字符串War Games样式一个字母

时间:2013-03-19 20:19:23

标签: java string printing

在我在网上找到的那一分钟使用这段代码

 String welcome = "Would you like to play a game?";
 for (int i = 0; i < welcome.length(); i++) {
      System.out.println(welcome.charAt(i));

    }

非常基本的东西,但是它可以快速地逐行打印出来,如何添加一个小暂停,并在前一个字符后立即打印?所以到最后它只是说你想玩游戏吗?

我正在使用CMD和Sublime文本。

谢谢!

3 个答案:

答案 0 :(得分:4)

使用System.out.print而不是println。使用Thread.sleep暂停。循环直到打印出整个字符串。

String welcome = "Would you like to play a game?";
for (int i = 0; i < welcome.length(); i++) {
    System.out.print(welcome.charAt(i));
    Thread.sleep(1000L); // in milliseconds
}
System.out.println(); // start a new line

Thread.sleep抛出InterruptedException。如果这个代码进入你的main方法,最简单的处理方法(假设你没有兴趣通过中断来取消线程)是将throws InterruptedException添加到main方法声明中(异常不会被抛出,你只是让编译器感到高兴。

答案 1 :(得分:2)

使用System.out.print代替System.out.println。要添加一个小延迟,最简单的方法是使用Thread.sleep

答案 2 :(得分:1)

 for (int i = 0; i < welcome.length(); i++) {
      System.out.print(welcome.charAt(i));
      Thread.sleep(100);
    }