Rumah > Java > javaTutorial > Bagaimana untuk Membandingkan Tarikh dalam Java Tidak Termasuk Masa?

Bagaimana untuk Membandingkan Tarikh dalam Java Tidak Termasuk Masa?

Linda Hamilton
Lepaskan: 2024-11-09 08:16:02
asal
551 orang telah melayarinya

How to Compare Dates in Java Excluding Time?

Perbandingan Tarikh Tidak Termasuk Masa: Penerokaan Menggunakan Masa Joda

Di Java, objek java.util.Date mewakili kedua-dua tarikh dan masa. Apabila membandingkan tarikh, selalunya wajar untuk mengabaikan bahagian masa dan memberi tumpuan semata-mata pada tarikh itu sendiri.

Joda Time: Penyelesaian Ringkas

Joda Time, perpustakaan terkenal untuk pengiraan temporal, menawarkan penyelesaian yang elegan. Ia menyediakan kaedah toLocalDate(), yang mengekstrak maklumat tarikh daripada objek DateTime, membuang atribut masa.

DateTime first = ...;
DateTime second = ...;

LocalDate firstDate = first.toLocalDate();
LocalDate secondDate = second.toLocalDate();

return firstDate.compareTo(secondDate);
Salin selepas log masuk

Sebagai alternatif, anda boleh menggunakan kaedah DateTimeComparator.getDateOnlyInstance(), yang memudahkan proses perbandingan:

return DateTimeComparator.getDateOnlyInstance().compare(first, second);
Salin selepas log masuk

API Terbina dalam Alternatif

Jika Joda Time bukan pilihan, anda boleh melaraskan tika Kalendar secara manual untuk mewakili tarikh sahaja, menghapuskan medan jam, minit, saat dan milisaat.

Calendar firstCalendar = Calendar.getInstance();
Calendar secondCalendar = Calendar.getInstance();

firstCalendar.set(Calendar.HOUR_OF_DAY, 0);
firstCalendar.set(Calendar.MINUTE, 0);
firstCalendar.set(Calendar.SECOND, 0);
firstCalendar.set(Calendar.MILLISECOND, 0);

secondCalendar.set(Calendar.HOUR_OF_DAY, 0);
secondCalendar.set(Calendar.MINUTE, 0);
secondCalendar.set(Calendar.SECOND, 0);
secondCalendar.set(Calendar.MILLISECOND, 0);

return firstCalendar.compareTo(secondCalendar);
Salin selepas log masuk

Walau bagaimanapun, ambil perhatian bahawa kaedah ini lebih rumit dan kurang mantap berbanding dengan pendekatan Joda Time.

Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Tarikh dalam Java Tidak Termasuk Masa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan