Rumah >Java >javaTutorial >Gunakan kelas Tempoh dan Tempoh baharu dalam Java 11 untuk mengendalikan tarikh dan selang masa

Gunakan kelas Tempoh dan Tempoh baharu dalam Java 11 untuk mengendalikan tarikh dan selang masa

PHPz
PHPzasal
2023-07-30 11:33:18904semak imbas

Gunakan kelas Tempoh dan kelas Tempoh baharu dalam Java 11 untuk mengendalikan tarikh dan selang masa

Abstrak: Java 11 memperkenalkan kelas Tempoh dan kelas Tempoh baharu, menjadikan tarikh pengendalian dan selang masa lebih mudah dan fleksibel. Artikel ini akan memperkenalkan konsep asas dan penggunaan kedua-dua kelas ini dan menyediakan beberapa contoh kod untuk membantu pembaca memahami dan menggunakan kelas ini dengan lebih baik.

1. Kelas Period

Kelas Period digunakan untuk mewakili selang antara tarikh. Ia mengandungi tiga medan: tahun, bulan dan hari Anda boleh mencipta objek Period melalui contoh kod berikut:

import java.time.LocalDate;
import java.time.Period;

public class PeriodExample {
    public static void main(String[] args) {
        LocalDate start = LocalDate.of(2021, 1, 1);
        LocalDate end = LocalDate.of(2022, 1, 1);
        Period period = Period.between(start, end);
        System.out.println("Years: " + period.getYears());
        System.out.println("Months: " + period.getMonths());
        System.out.println("Days: " + period.getDays());
    }
}

Hasil keluarannya ialah:

Years: 1
Months: 0
Days: 0

Dalam contoh di atas, kami menggunakan LocalDate. Kelas untuk mewakili tarikh dan gunakan kaedah Period.between() untuk mengira selang antara dua tarikh. Tahun, bulan dan hari selang boleh diperolehi melalui kaedah getYears(), getMonths() dan getDays(). LocalDate类来表示日期,并使用Period.between()方法来计算两个日期之间的间隔。可以通过getYears()getMonths()getDays()方法来获取间隔的年、月和日数。

二、Duration类

Duration类用于表示时间之间的间隔。它以秒和纳秒为单位,可以通过下面的代码示例来创建一个Duration对象:

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

public class DurationExample {
    public static void main(String[] args) {
        LocalTime start = LocalTime.of(10, 0, 0);
        LocalTime end = LocalTime.of(12, 0, 0);
        Duration duration = Duration.between(start, end);
        System.out.println("Hours: " + duration.toHours());
        System.out.println("Minutes: " + duration.toMinutes());
        System.out.println("Seconds: " + duration.getSeconds());
    }
}

输出结果为:

Hours: 2
Minutes: 120
Seconds: 7200

上面的例子中,我们使用了LocalTime类来表示时间,并使用Duration.between()方法来计算两个时间之间的间隔。可以通过toHours()toMinutes()getSeconds()方法来获取间隔的小时、分钟和秒数。

三、Period和Duration的操作

除了计算日期和时间间隔,Period和Duration类还提供了一些操作方法用于对间隔进行加减运算,如下所示:

import java.time.LocalDate;
import java.time.Period;

public class PeriodOperationExample {
    public static void main(String[] args) {
        LocalDate date = LocalDate.of(2021, 1, 1);
        Period period = Period.of(1, 2, 3);
        LocalDate result = date.plus(period);
        System.out.println("Result: " + result);
    }
}

输出结果为:

Result: 2022-03-04

上面的例子中,我们使用了plus()方法将指定的间隔加到日期上。可以使用plusYears()plusMonths()plusDays()

2. Kelas Tempoh

Kelas Tempoh digunakan untuk mewakili selang masa. Ia adalah dalam saat dan nanosaat Anda boleh mencipta objek Tempoh melalui contoh kod berikut:

rrreee

Hasil output ialah:

rrreee

Dalam contoh di atas, kami menggunakan kelas LocalTime untuk mewakili masa , dan gunakan kaedah Duration.between() untuk mengira selang antara dua masa. Jam, minit dan saat selang boleh diperolehi melalui kaedah toHours(), toMinutes() dan getSeconds().

3 Operasi Tempoh dan Tempoh
  • Selain mengira selang tarikh dan masa, kelas Tempoh dan Tempoh juga menyediakan beberapa kaedah operasi untuk menambah dan menolak selang, seperti yang ditunjukkan di bawah:
  • rrreee
  • Hasil output ialah:
  • rreee.
Dalam contoh di atas, kami menggunakan kaedah plus() untuk menambah selang waktu yang ditentukan pada tarikh. Anda boleh menggunakan kaedah plusYears(), plusMonths() dan plusDays() untuk menambah bilangan tahun, bulan dan hari yang ditentukan kepada satu tarikh, masing-masing.

Untuk kelas Tempoh, anda juga boleh menggunakan kaedah operasi yang serupa untuk menambah dan menolak selang masa. 🎜🎜Kesimpulan: 🎜🎜Dengan menggunakan kelas Tempoh dan kelas Tempoh dalam Java 11, kami boleh mengendalikan tarikh dan selang masa dengan lebih mudah. Kelas ini menyediakan kaedah yang kaya untuk mengira, mengendalikan dan memformat selang, membolehkan kami mengendalikan pelbagai keperluan tarikh dan masa dengan lebih fleksibel. Oleh itu, semasa pembangunan, kita boleh memilih kelas yang sesuai untuk mengendalikan selang tarikh dan masa berdasarkan senario tertentu, meningkatkan kebolehbacaan dan kebolehselenggaraan kod. 🎜🎜Rujukan: 🎜🎜🎜Dokumentasi rasmi Oracle: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Period.html🎜🎜Dokumentasi rasmi Oracle : https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Duration.html🎜🎜🎜Saya harap artikel ini dapat membantu pembaca memahami dan menggunakan kelas Period dengan lebih baik dan Kelas Tempoh. Jika anda mempunyai sebarang soalan atau cadangan tentang kedua-dua kategori ini, sila tinggalkan mesej. Terima kasih! 🎜

Atas ialah kandungan terperinci Gunakan kelas Tempoh dan Tempoh baharu dalam Java 11 untuk mengendalikan tarikh dan selang masa. 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