我一直在尝试创建一种方法来重新创建口袋妖怪的“滚动文本”,其中一次出现一个字母。问题是能够创建一个足够短的计时器以使其合理。
这就是我的尝试:
public static void roll(String text) {
int i = 0;
while(i < text.length()) {
try {
Thread.sleep(200); //1000 milliseconds is one second.
} catch(InterruptedException ex) {
Thread.currentThread().interrupt();
}
System.out.print(text.charAt(i));
i++;
}
}
如果我将Thread.sleep中的值设置为高于250的任何值,这将正常工作。问题是,如果我将秒设置为低于250,那么它将等待整个时间长度(如果我告诉它等待100毫秒100在输出任何东西之前,它会等待10秒钟。
我不确定这是计时器本身的类型是否存在问题,或者此处是否还有其他问题。
答案 0 :(得分:3)
您可以使用System.out.flush();
强制写出缓冲区。