在Java中,可以使用Thread.sleep()
方法让当前线程休眠到指定时间。首先需要计算从当前时间到指定时间的毫秒数,然后调用Thread.sleep()
方法。以下是一个示例:
import java.util.Date;
public class SleepToSpecificTime {
public static void main(String[] args) {
// 设置指定的时间,例如2022年1月1日0时0分0秒
long targetTime = new Date(2022 - 1900, 0, 1, 0, 0, 0).getTime();
// 获取当前时间
long currentTime = System.currentTimeMillis();
// 计算从当前时间到指定时间的毫秒数
long sleepTime = targetTime - currentTime;
// 如果指定时间已经过去,不进行休眠
if (sleepTime > 0) {
try {
// 让当前线程休眠到指定时间
Thread.sleep(sleepTime);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println("指定时间已到,程序继续执行");
}
}
这段代码会让当前线程休眠到2022年1月1日0时0分0秒。如果指定时间已经过去,程序将立即继续执行。