Java取得目前時間的前一天的Date
的方法如下。
使用Java 8的Instant
扣除一天後轉成Date
。
Date date = Date.from(Instant.now().minus(1, ChronoUnit.DAYS));
System.out.println(date); // Tue Jan 26 11:14:53 CST 2021
使用Java 8的LocalDateTime
扣除一天後轉成Instant
再轉成Date
Date date = Date.from(LocalDateTime.now().minusDays(1).atZone(ZoneId.systemDefault()).toInstant());
System.out.println(date); // Tue Jan 26 11:14:53 CST 2021
使用Calendar
扣除一日轉成Date
。
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -1);
Date date = calendar.getTime();
System.out.println(date); // Tue Jan 26 11:14:53 CST 2021
取得目前Unix時間的毫秒數(Unit Epoch millisecond)扣掉一天的毫秒數86400000毫秒(24時 x 60分 x 60秒 x 1000毫秒)。
Date date = new Date(System.currentTimeMillis() - 24 * 60 * 60 * 1000);
System.out.println(date); // Tue Jan 26 11:14:53 CST 2021
沒有留言:
張貼留言