我想制作等待400 MSc的Timer
,然后打印“hi!” (例如。)。我知道如何通过javax.swing.Timer
ActionListener action = new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
System.out.println("hi!");
}
};
加:
timer = new Timer(0, action);
timer.setRepeats(false);
timer.setInitialDelay(400);
timer.start();
但据我所知,这绝对不是一个好方法,因为这种Timer
适用于Swing。如何以正确的方式做到这一点? (不使用Thread.sleep()
)
答案 0 :(得分:10)
Timer t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
System.out.println("Hi!");
}
}, 400);
答案 1 :(得分:1)
您可以考虑Quartz调度程序,它是一个真正可扩展,易于学习和配置的解决方案。您可以查看官方网站上的教程 http://quartz-scheduler.org/documentation/quartz-2.1.x/quick-start
答案 2 :(得分:1)
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class currentTime {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
System.out.println( sdf.format(cal.getTime()) );
}
}
答案 3 :(得分:0)