我试图在页面重定向到另一个页面之前进行倒计时,例如“您将在 (x) 秒后被重定向。x 是保存在 ArrayList 中的字符串值之一。 我试过了,但它会等待 for 循环结束以记下秒数,结果类似于“54321”。
ArrayList<String> seconds=new ArrayList<String>();
seconds.add(5);
seconds.add(4);
seconds.add(3);
seconds.add(2);
seconds.add(1);
<font size="45"><% for (int i=0;i<5;i++)
{
out.write(seconds.get(i));
}
%></font>
最佳答案
您需要启动一个新线程并从该线程调用此方法,否则它只会在主线程忙于重定向后才会被调用。
线程示例:
public class PrinterThread extends Thread {
private Thread thread;
private void method(){
--add code here
}
public void start() {
if (thread == null) {
thread = new Thread(this);
thread.start();
}
}
@Override
public void run() {
method();
}
}
并这样调用它:
PrinterThread thread = new PrinterThread();
thread.start();
关于java - 每隔 1 秒将值按顺序写入 ArrayList 中的 JSP 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38171866/