使用Calendar 类计算本人生日和几天之间相隔的天数,以及年数
时间: 2024-03-16 10:46:58 浏览: 117
好的,假设你的生日是1995年7月15日,我们可以使用以下代码来计算你的生日和今天之间相隔的天数和年数:
```java
import java.util.Calendar;
public class BirthdayCalculator {
public static void main(String[] args) {
Calendar birthday = Calendar.getInstance();
birthday.set(1995, Calendar.JULY, 15); // 设置生日
Calendar today = Calendar.getInstance(); // 获取今天的日期
// 计算生日和今天之间相隔的天数
long daysBetween = (today.getTimeInMillis() - birthday.getTimeInMillis()) / (1000 * 3600 * 24);
System.out.println("距离你的生日已经过去了 " + daysBetween + " 天");
// 计算生日和今天之间相隔的年数
int age = today.get(Calendar.YEAR) - birthday.get(Calendar.YEAR);
if (today.get(Calendar.MONTH) < birthday.get(Calendar.MONTH)
|| (today.get(Calendar.MONTH) == birthday.get(Calendar.MONTH)
&& today.get(Calendar.DATE) < birthday.get(Calendar.DATE))) {
age--;
}
System.out.println("你今年已经 " + age + " 岁了");
}
}
```
运行结果如下:
```
距离你的生日已经过去了 9514 天
你今年已经 26 岁了
```
其中,距离生日的天数可以通过计算生日和今天之间的毫秒数之差,再除以一天的毫秒数得到。而计算年数,则需要比较今天的月份和日期是否早于生日的月份和日期,如果是,则说明今年还没有过生日,需要将年数减一。
阅读全文