1.java8环境
public static void main(String[] args) {
Date currentTime = new Date();
//从一个 Instant和区域ID获得 LocalDateTime实例
LocalDateTime localDateTime=LocalDateTime.ofInstant(currentTime.toInstant(), ZoneId.systemDefault());
//获取第第二天零点时刻的实例
LocalDateTime toromorrowTime=LocalDateTime.ofInstant(currentTime.toInstant(), ZoneId.systemDefault())
.plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(0);
//ChronoUnit日期枚举类,between方法计算两个时间对象之间的时间量
long seconds = ChronoUnit.SECONDS.between(localDateTime, toromorrowTime);
System.out.println(seconds);
}
2.
public static void main(String[] args) {
long totalTime = 0;
try {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String currentTime = simpleDateFormat.format(new Date());
String substring = currentTime.substring(0, 8)+"235959";
long nowTime = (simpleDateFormat.parse(currentTime).getTime())/1000;
long endTime = (simpleDateFormat.parse(substring).getTime())/1000;
totalTime = endTime - nowTime;
// int hour = (int)(Math.floor(totalTime / 3600));
int minute = (int)(Math.floor((totalTime - hour*3600)/60));
int second = (int)(Math.floor(totalTime - hour*3600 - minute*60);
} catch (ParseException e) {
logger.info("获取时间差异常");
e.printStackTrace();
}
System.out.println(totalTime);
}