Rumah  >  Artikel  >  Java  >  Bagaimanakah anda Mengira Hari Antara Tarikh di Java 8?

Bagaimanakah anda Mengira Hari Antara Tarikh di Java 8?

DDD
DDDasal
2024-11-08 04:27:01142semak imbas

How do you Calculate Days Between Dates in Java 8?

Mengira Hari Antara Tarikh di Java 8

Untuk pengiraan tepat hari antara dua tarikh, Java 8 Date API menawarkan penyelesaian yang mantap. Tanpa bergantung pada perpustakaan luaran, masalah itu boleh diatasi dengan pertimbangan berikut:

Mencegah Ralat Masa Penjimatan Siang:

Gunakan objek LocalDate, yang mewakili tarikh tanpa masa, untuk mengelakkan turun naik DST.

Sekatan Input:

Anggapkan parameter input ialah dua kejadian Tarikh yang mewakili tarikh tanpa masa.

Hari Logik Berbanding Hari Tersurat:

Hari Logik (Hari Kalendar):

Untuk mengira bilangan logik hari antara tarikh, gunakan kaedah DAYS.between() daripada java.time.temporal.ChronoUnit:

<code class="java">LocalDate dateBefore;
LocalDate dateAfter;
long daysBetween = DAYS.between(dateBefore, dateAfter);</code>

Hari Tersurat (Tempoh 24 Jam):

Untuk mengira bilangan tersurat 24 jam hari antara tarikh (tempoh), gunakan kelas Tempoh:

<code class="java">LocalDate today = LocalDate.now();
LocalDate yesterday = today.minusDays(1);
// Duration oneDay = Duration.between(today, yesterday); // throws exception
Duration.between(today.atStartOfDay(), yesterday.atStartOfDay()).toDays() // alternative option</code>

Sumber Tambahan:

Untuk butiran lanjut, rujuk dokumentasi Java SE 8 Date and Time: https ://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html

Atas ialah kandungan terperinci Bagaimanakah anda Mengira Hari Antara Tarikh di Java 8?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn