java实现生存时间统计: 1.用户输入出生的年月日 2.程序会计算的出已经生存的时间 3.生存时间分别以年 月日时分秒和毫秒为单位统计
时间: 2024-03-01 11:52:04 浏览: 91
时间选择器(年月日时分)datetime-picker
5星 · 资源好评率100%
好的,以下是Java实现生存时间统计的代码:
```java
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.Period;
import java.time.temporal.ChronoUnit;
import java.util.Scanner;
public class LifetimeCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入出生年份:");
int year = scanner.nextInt();
System.out.print("请输入出生月份:");
int month = scanner.nextInt();
System.out.print("请输入出生日期:");
int day = scanner.nextInt();
LocalDate birthday = LocalDate.of(year, month, day);
LocalDate today = LocalDate.now();
Period period = Period.between(birthday, today);
System.out.println("你已经生存了:" + period.getYears() + "年" + period.getMonths() + "月" + period.getDays() + "天");
System.out.println("生存时间总共为:" + ChronoUnit.YEARS.between(birthday, LocalDateTime.now()) + "年" + ChronoUnit.MONTHS.between(birthday, LocalDateTime.now()) % 12 + "月" + ChronoUnit.DAYS.between(birthday, LocalDateTime.now()) % 30 + "天" + ChronoUnit.HOURS.between(birthday.atStartOfDay(), LocalDateTime.now()) % 24 + "小时" + ChronoUnit.MINUTES.between(birthday.atStartOfDay(), LocalDateTime.now()) % 60 + "分钟" + ChronoUnit.SECONDS.between(birthday.atStartOfDay(), LocalDateTime.now()) % 60 + "秒" + ChronoUnit.MILLIS.between(birthday.atStartOfDay(), LocalDateTime.now()) % 1000 + "毫秒");
}
}
```
程序首先会让用户输入出生年月日,然后使用Java 8中的LocalDate类来计算已经生存的时间和总共的生存时间。其中Period类可以计算两个日期之间的年、月、日差值,而ChronoUnit类则可以计算更加精细的时间差值,包括小时、分钟、秒和毫秒等。最后,程序会输出已经生存的时间和总共的生存时间,以年月日时分秒和毫秒为单位。
阅读全文