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

  • Learn Math Tutorials

    Learn Math T

    20 Kasım 2011
  • Matt Steffanina

    Matt Steffan

    1 EYLÜL 2011
  • Muse

    Muse

    28 EYLÜL 2006