Gunakan kelas OffsetDateTime dan kelas ZoneOffset baharu dalam Java 11 untuk mengendalikan tarikh dan masa dengan offset
Petikan:
Java 11 memperkenalkan kelas OffsetDateTime dan kelas ZoneOffset baharu untuk mengendalikan tarikh dan masa dengan offset zon masa. Kelas ini menyediakan lebih banyak fleksibiliti dan fungsi, membolehkan pembangun mengendalikan tarikh dan masa dengan lebih baik dalam zon waktu yang berbeza.
OffsetDateTime offsetDateTime = OffsetDateTime.of(2022, 1, 1, 12, 0, 0, 0, ZoneOffset.ofHours(8));
Dalam kod di atas, kami mencipta tika OffsetDateTime yang mewakili 12:00:00 pada 1 Januari 2022 dan menentukan zon waktu mengimbangi +8 jam.
Kelas OffsetDateTime menyediakan satu siri kaedah untuk mendapatkan dan memanipulasi bahagian berlainan tarikh, masa dan zon masa yang diimbangi. Sebagai contoh, kita boleh menggunakan getYear(), getMonth(), getDayOfMonth() dan kaedah lain untuk mendapatkan tahun, bulan dan hari tarikh:
int year = offsetDateTime.getYear(); Month month = offsetDateTime.getMonth(); int dayOfMonth = offsetDateTime.getDayOfMonth();
ZoneOffset zoneOffset = ZoneOffset.ofHours(8); ZoneOffset zoneOffset = ZoneOffset.ofTotalSeconds(28800);
Dalam kod di atas, kami telah mencipta offset zon waktu masing-masing +8 jam dan +28800 Contoh ZoneOffset bagi zon masa mengimbangi dalam beberapa saat.
Kelas ZoneOffset menyediakan satu siri kaedah untuk mendapatkan dan memanipulasi bahagian offset yang berlainan. Sebagai contoh, kita boleh menggunakan kaedah getTotalSeconds() untuk mendapatkan jumlah saat offset:
int totalSeconds = zoneOffset.getTotalSeconds();
import java.time.OffsetDateTime; import java.time.Month; import java.time.ZoneOffset; public class DateTimeExample { public static void main(String[] args) { OffsetDateTime offsetDateTime = OffsetDateTime.of(2022, 1, 1, 12, 0, 0, 0, ZoneOffset.ofHours(8)); int year = offsetDateTime.getYear(); Month month = offsetDateTime.getMonth(); int dayOfMonth = offsetDateTime.getDayOfMonth(); int hour = offsetDateTime.getHour(); int minute = offsetDateTime.getMinute(); int second = offsetDateTime.getSecond(); System.out.println("Year: " + year); System.out.println("Month: " + month); System.out.println("Day of Month: " + dayOfMonth); System.out.println("Hour: " + hour); System.out.println("Minute: " + minute); System.out.println("Second: " + second); ZoneOffset zoneOffset = ZoneOffset.ofHours(8); int totalSeconds = zoneOffset.getTotalSeconds(); System.out.println("Total Seconds: " + totalSeconds); } }
Hasil keluaran:
Year: 2022 Month: JANUARY Day of Month: 1 Hour: 12 Minute: 0 Second: 0 Total Seconds: 28800
Dalam kod contoh di atas, kami mula-mula mencipta tika OffsetDateTime yang mewakili 12:00:00 pada 1 Januari 2022, dan memperoleh bahagian yang berbeza (tahun, bulan, hari, jam, minit, saat). Kami kemudiannya mencipta tika ZoneOffset yang mewakili zon waktu +8 jam offset dan memperoleh jumlah saat offset.
Kesimpulan:
Menggunakan kelas OffsetDateTime dan kelas ZoneOffset dalam Java 11, kami boleh mengendalikan tarikh dan masa dengan lebih baik dengan offset zon masa. Kelas-kelas ini menyediakan set fungsi dan kaedah yang kaya yang membolehkan pembangun mendapatkan dan memanipulasi bahagian yang berlainan tarikh, masa dan zon waktu mengimbangi. Pembangun boleh menggunakan kelas ini untuk mengendalikan tarikh dan masa dalam zon waktu yang berbeza mengikut keperluan sebenar, meningkatkan kebolehbacaan dan kebolehselenggaraan kod.
Atas ialah kandungan terperinci Gunakan kelas OffsetDateTime dan kelas ZoneOffset baharu dalam Java 11 untuk mengendalikan tarikh dan masa dengan offset. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!