首先请注意,这Timer
实际上是一种过时的API,但是仍然可以解决您的问题,您可以在它周围编写一个小的包装,使该schedule
方法可以接受aRunnable
,然后在内部将其Runnable
转换为一个TimerTask
。然后,您将拥有schedule
可以接受lambda的方法。
public class MyTimer {
private final Timer t = new Timer();
public TimerTask schedule(final Runnable r, long delay) {
final TimerTask task = new TimerTask() { public void run() { r.run(); }};
t.schedule(task, delay);
return task;
}
}