Rumah > Java > javaTutorial > teks badan

Gunakan kelas Duration baharu dan antara muka TemporalAdjuster dalam Java 11 untuk mengendalikan selang masa dan pelarasan tarikh

WBOY
Lepaskan: 2023-07-31 17:17:00
asal
1244 orang telah melayarinya

Gunakan kelas Duration baharu dan antara muka TemporalAdjuster dalam Java 11 untuk mengendalikan selang masa dan pelarasan tarikh

Dalam pembangunan, berurusan dengan masa dan tarikh adalah tugas yang sangat biasa. Java 11 memperkenalkan kelas Duration baharu dan antara muka TemporalAdjuster, menjadikan selang masa pemprosesan dan pelarasan tarikh lebih mudah dan fleksibel. Artikel ini menerangkan cara menggunakan dua ciri baharu ini.

Kelas jangka masa digunakan untuk mewakili selang masa antara dua titik dalam masa. Berbanding dengan kelas Tarikh dan kelas Kalendar lama, kelas Tempoh lebih ringkas dan lebih mudah digunakan. Berikut ialah kod sampel menggunakan kelas Tempoh:

import java.time.Duration;
import java.time.LocalTime;

public class DurationExample {
    public static void main(String[] args) {
        LocalTime startTime = LocalTime.parse("08:30:00");
        LocalTime endTime = LocalTime.parse("12:00:00");

        Duration duration = Duration.between(startTime, endTime);

        long hours = duration.toHours();
        long minutes = duration.toMinutes() % 60;

        System.out.println("Duration: " + hours + " hours " + minutes + " minutes");
    }
}
Salin selepas log masuk

Dalam kod di atas, kami mencipta dua objek LocalTime untuk mewakili masa mula dan masa tamat. Kemudian gunakan kaedah Duration.between() untuk mengira selang masa antara dua titik masa. Akhir sekali, dapatkan nilai jam dan minit melalui kaedah toHours() dan toMinutes(). Outputnya ialah "Tempoh: 3 jam 30 minit".

Selain mengira selang masa, kelas Tempoh juga menyediakan kaedah berguna lain, seperti penambahan, penolakan, perbandingan, dsb. Anda boleh memilih kaedah yang sesuai mengikut keperluan anda.

Satu lagi ciri baharu ialah antara muka TemporalAdjuster. Antara muka ini digunakan untuk melaraskan tarikh, seperti melaraskan tarikh ke hari bekerja berikutnya, hari pertama bulan berikutnya, dsb. Berikut ialah kod sampel menggunakan antara muka TemporalAdjuster:

import java.time.LocalDate;
import java.time.DayOfWeek;
import java.time.temporal.TemporalAdjusters;

public class TemporalAdjusterExample {
    public static void main(String[] args) {
        LocalDate date = LocalDate.now();

        LocalDate nextWorkingDay = date.with(TemporalAdjusters.next(DayOfWeek.MONDAY));

        System.out.println("Next working day: " + nextWorkingDay);
    }
}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan kaedah LocalDate.now() untuk mendapatkan tarikh semasa. Kemudian gunakan kaedah with() dan kaedah TemporalAdjusters.next() untuk melaraskan tarikh ke hari Isnin berikutnya. Hasil keluaran ialah "Hari bekerja seterusnya: 2021-09-13".

Antara muka TemporalAdjuster juga menyediakan kaedah statik lain yang berguna, seperti sebelumnya(), lastDayOfMonth(), dll. Anda boleh memilih kaedah yang sesuai mengikut keperluan anda.

Ringkasan:
Kelas Duration baharu dan antara muka TemporalAdjuster dalam Java 11 menyediakan fungsi baharu untuk mengendalikan selang masa dan pelarasan tarikh, menjadikan pembangunan lebih mudah dan fleksibel. Anda boleh memilih kaedah yang sesuai mengikut keperluan anda. Semoga artikel ini bermanfaat kepada anda.

Atas ialah kandungan terperinci Gunakan kelas Duration baharu dan antara muka TemporalAdjuster dalam Java 11 untuk mengendalikan selang masa dan pelarasan tarikh. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan