我想写一个方法,从诞生之日起计算年龄的年龄计算方法方法,是逻辑正确,以及如何把它写在android系统的Java:如何创建于Android的
public int calculateAge(String birthday){
// consider that birthday format is ddmmyyyy;
String today = SystemDate(ddmmyyyy);
int bDay = birthday(1,2).toInteger;
int bMonth = birthday(3,4).toInteger;
int bYear = birhtday(5,8).toInteger;
int tDay = today(1,2).toInteger;
int tMonth = today(3,4).toInteger;
int tYear = today(5,8).toInteger;
if (tMonth == bMonth){
if (tday>= bDay){
age = tYear - bYear;
else
age = tYear - bYear - 1;}
else
if (tMonth > bMonth) {
age = tYear - bYear;
else
age = tYear - bYear - 1;}
}
return age;
}
我喜欢你的方式使用day_of_year,聪明:) – Heba 2011-03-15 06:55:33
我用DatePicker也得到了DOB,但我将它转换为字符串以便将其存储在数据库(SQLite)中,并且每次我需要年龄计算我将dob作为参数返回,所以我添加了substring方法来获取年,月和日。 – Heba 2011-03-15 06:56:20
我在SO上使用了一些答案构建了这个解决方案,我相信'Calendar.DAY_OF_YEAR'来自指向www.coderanch.com的答案。请享用! – Kingsolmn 2011-03-15 16:26:53