SORU
12 Temmuz 2009, Pazar


Nasıl birisi hesaplamak'Java yaş s?

Java bir yöntem bir int olarak yılda bir yaş geri dönmek istiyorum. Şimdi ben ne aşağıdaki getBirthDate() bir Date nesnesini döndürür (doğum tarihi ;-)):

public int getAge() {
	long ageInMillis = new Date().getTime() - getBirthDate().getTime();

	Date age = new Date(ageInMillis);

	return age.getYear();
}

Ama getYear (beri) bunu yapmanın daha iyi bir yolu olup olmadığını merak ediyorum kaldırılmış? Yerde hiçbir birim testleri var beri hatta bu düzgün çalışır emin değilim (henüz).

CEVAP
12 Temmuz 2009, Pazar


Check out Joda, hangi kolaylaştırır tarih/saat hesaplamaları (Joda da temeli olan yeni standart Java tarih/saat API, bu yüzden bir öğrenme yakında-to-be-standart API).

EDİT: Java 8 something very similar ve incelemeye değer.

örneğin

LocalDate birthdate = new LocalDate (1970, 1, 20);
LocalDate now = new LocalDate();
Years age = Years.yearsBetween(birthdate, now);

istediğiniz olabilir gibi basit. Geçerli Java şeyleri tespit ettiğin gibi) biraz sezgisel olmayan.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bart Baker

    Bart Baker

    1 Aralık 2006
  • hitcreatormusic2

    hitcreatormu

    21 Mayıs 2010
  • Sali Kaceli

    Sali Kaceli

    24 ŞUBAT 2009