我计算年龄和周数,如果当前年份和dob年度相同,应该在几周内回答,但我的代码不能正常工作,只有当我输入两年不同时
if (dob.get(Calendar.YEAR) != now.get(Calendar.YEAR))
{
if (dob.get(Calendar.MONTH) > now.get(Calendar.MONTH))
{
age--;
}
else if (dob.get(Calendar.MONTH) == now.get(Calendar.MONTH))
{
if (dob.get(Calendar.DAY_OF_MONTH) > now.get(Calendar.DAY_OF_MONTH))
{
age--;
}
System.out.println(name + "is " + age + " years old");
}
}
else if (dob.get(Calendar.MONTH) < now.get(Calendar.MONTH))
{
age++;
}
else if (dob.get(Calendar.MONTH) == now.get(Calendar.MONTH))
{
if (dob.get(Calendar.DAY_OF_MONTH) > now.get(Calendar.DAY_OF_MONTH))
{
age++;
System.out.println(name + "is " + age + " weeks old");
}
}
答案 0 :(得分:0)
在else
声明中,您只会在以下情况下打印:
正如@khelwood建议的那样,添加大括号{}
可以帮助您清楚地看到这一点。