3

在我在网上找到的那一刻使用这个代码

 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 文本中工作。

谢谢!

4

3 回答 3

5

使用 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 方法声明(不会抛出异常,您只是保持编译器很高兴)。

于 2013-03-19T20:20:56.270 回答
2

使用System.out.print而不是System.out.println. 要添加一点延迟,最简单的方法是使用Thread.sleep.

于 2013-03-19T20:20:57.537 回答
1
 for (int i = 0; i < welcome.length(); i++) {
      System.out.print(welcome.charAt(i));
      Thread.sleep(100);
    }
于 2013-03-19T20:22:53.920 回答