Rumah > Java > javaTutorial > Apakah Cara Paling Cekap untuk Mengira Umur di Jawa?

Apakah Cara Paling Cekap untuk Mengira Umur di Jawa?

Patricia Arquette
Lepaskan: 2024-12-27 15:30:15
asal
959 orang telah melayarinya

What's the Most Efficient Way to Calculate Age in Java?

Mengoptimumkan Pengiraan Umur dalam Java: Membuang Kaedah Tidak Digunapakai

Mengira umur seseorang di Jawa boleh melibatkan pelbagai pendekatan. Walaupun kaedah tradisional menggunakan objek Date mempunyai hadnya, Java menyediakan cara yang lebih cekap dan tepat untuk menentukan umur.

Untuk mengelakkan bergantung pada kaedah getYear() yang telah ditamatkan, adalah disyorkan untuk menggunakan kelas Period yang diperkenalkan dalam Java 8 , yang memudahkan pengiraan umur dan memberikan hasil yang tepat.

Kaedah getAge() yang dikemas kini menggunakan Tempoh:

public int getAge() {
    LocalDate birthDate = getBirthDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
    LocalDate currentDate = LocalDate.now();
    if ((birthDate != null) && (currentDate != null)) {
        return Period.between(birthDate, currentDate).getYears();
    } else {
        return 0;
    }
}
Salin selepas log masuk

Kaedah ini memanfaatkan kaedah toInstant() dan atZone() untuk menukar objek Date menjadi objek LocalDate, membolehkan keserasian dengan Period.

Ujian JUnit menunjukkan kefungsiannya :

@Test
public void testCalculateAge_Success() {
    LocalDate birthDate = LocalDate.of(1961, 5, 17);
    int actual = getAge(birthDate, LocalDate.of(2016, 7, 12));
    Assert.assertEquals(55, actual);
}
Salin selepas log masuk

Memandangkan penggunaan meluas Java 8, pendekatan yang dioptimumkan ini memastikan kecekapan dan ketepatan yang lebih tinggi dalam menentukan umur seseorang.

Atas ialah kandungan terperinci Apakah Cara Paling Cekap untuk Mengira Umur di Jawa?. 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