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

  • MndsgnVEVO

    MndsgnVEVO

    26 Kasım 2013
  • Moto Journal

    Moto Journal

    28 Mayıs 2007
  • Ownage Pranks

    Ownage Prank

    13 AĞUSTOS 2007