Java 等待的解决方案是什么?

Java 等待的解决方案是什么?,java,Java,我有这个代码,我想放一个等待的线程。我尝试了线程。sleep()但不好,因为它按住按钮1秒钟。我想我需要在这里等待()但我不知道。请帮助我,谢谢 所以我的问题是如何在actionlistener中等待 button[1].addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) { button[1].setIcon(elemek[1]); p+

我有这个代码,我想放一个等待的线程。我尝试了线程。sleep()但不好,因为它按住按钮1秒钟。我想我需要在这里等待()但我不知道。请帮助我,谢谢 所以我的问题是如何在actionlistener中等待

  button[1].addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {            
    button[1].setIcon(elemek[1]);
    p+=1;
    g[0]=t[1];
    //here i want to wait 1 second
  dosomething
    }});

想法?

如果您需要在某些代码中等待,但不阻塞UI,则必须在单独的线程中运行此代码,并使用
thread.sleep()在此线程中等待。

像这样的

button[1].addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) { 
       Thread worker = new Thread(new Runable(){
           public void run(){
              button[1].setIcon(elemek[1]);
              p+=1;
              g[0]=t[1];
              Thread.sleep(1000);
              //dosomething
           }});
        worker.start();

    }});

将等待和
dosomething
放入后台任务: