Rumah >Java >javaTutorial >Bagaimanakah anda mengira hari antara dua tarikh dalam Java 8?

Bagaimanakah anda mengira hari antara dua tarikh dalam Java 8?

Linda Hamilton
Linda Hamiltonasal
2024-11-11 15:04:02541semak imbas

How do you calculate the days between two dates in Java 8?

Cara Mengira Hari Antara Dua Tarikh di Java 8

Mengira bilangan hari antara dua tarikh adalah tugas biasa dalam pengaturcaraan. Dalam Java 8, ini boleh dicapai menggunakan API Tarikh baharu tanpa memerlukan pustaka luaran.

Keperluan:

  • Halang ralat daripada masa penjimatan tarikh.
  • Input ialah dua objek Tarikh tanpa masa.

Penyelesaian tanpa Perpustakaan Luaran:

Untuk Hari Kalendar Logik:

Gunakan ChronoUnit.DAYS .antara() kaedah:

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

Untuk Hari 24 Jam Literal:

Gunakan kelas Tempoh:

<code class="java">LocalDate today = LocalDate.now();
LocalDate yesterday = today.minusDays(1);
Duration duration = Duration.between(today.atStartOfDay(), yesterday.atStartOfDay());
long daysBetween = duration.toDays();</code>

Perhatikan bahawa kaedah Duration.between() membuang pengecualian jika masa mula selepas masa tamat . Untuk mengelakkan perkara ini, tolak masa tamat daripada masa mula sebelum menghantarnya ke Duration.between().

Untuk maklumat lebih terperinci dan kaedah alternatif, rujuk dokumentasi Java SE 8 Date and Time.

Atas ialah kandungan terperinci Bagaimanakah anda mengira hari antara dua tarikh dalam 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