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

  • B3ASTTY™

    B3ASTTY™

    27 Mayıs 2013
  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • mipd1980

    mipd1980

    25 EKİM 2006