Java 短暂延迟
Java short delay
我一直在尝试创建一种方法来重新创建口袋妖怪的 "Rolling text",其中一次出现一个字母。问题是能够创建一个足够短的计时器以使其合理。
这是我试过的:
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 秒)在输出任何东西之前。
我不确定这是计时器类型本身的问题还是这里有其他问题。
您可以使用System.out.flush();
强制写出缓冲区。
我一直在尝试创建一种方法来重新创建口袋妖怪的 "Rolling text",其中一次出现一个字母。问题是能够创建一个足够短的计时器以使其合理。
这是我试过的:
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 秒)在输出任何东西之前。
我不确定这是计时器类型本身的问题还是这里有其他问题。
您可以使用System.out.flush();
强制写出缓冲区。