1. java 如何获取当前时间到凌晨12点的毫秒差值
这里有个坑人的地方就是小时的设置,HOUR区分上午和下午,不是我们要的,
HOUR_OF_DAY是24小时制的,符合我们的需要。
Calendar.HOUR:get 和 set 的字段数字,指示上午或下午的小时。
Calendar.HOUR_OF_DAY :get 和 set 的字段数字,指示一天中的小时。
代码
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_YEAR,1);
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.SECOND,0);
calendar.set(Calendar.MINUTE,0);
calendar.set(Calendar.MILLISECOND,0);
//当前时间与晚上十二点的毫秒差
Long timeOut = (calendar.getTimeInMillis()-System.currentTimeMillis()) / 1000;
//当前时间与晚上十二点的分钟差
Long secondTimeOut = (calendar.getTimeInMillis()-System.currentTimeMillis()) / (1000*60);
System.out.println("当前时间与晚上十二点的毫秒差"+timeOut);
System.out.println("当前时间与晚上十二点的分钟差"+secondTimeOut);
}
代码运行结果,当前时间是下午的4点整,距离480分钟也就是8小时后到晚上十二点