计算从出生到现在活了多少天

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

/**
 * 
 *  计算活了多少天 
 * 
 * 
 */

public class CountLife {

    public static void main(String[] args) throws ParseException {
        Scanner scanner = new Scanner(System.in);
        // 1) 输入您的出生日期确定时间开始时间
        System.out.println("请输入您的出生日期(如:1998-12-12)");
        String first = scanner.next();
        // 2) 确定结束时间
        System.out.println("请输入当前时间(如:1998-12-12)");
        String end = scanner.next();
        // 3) 使用 SimpleDateFormat 类,格式化时间,将字符转成Date格式,注意时间字符串必须和指定格式一样的 (yyyy-MM-dd)
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        // 4) 将字符串转为Date时间处理
        Date firstDate = format.parse(first);
        Date endDate = format.parse(end);
        // 5) 得到Calendar 日历处理类
        Calendar calendar = Calendar.getInstance();
        // 6) 将开始时间设置给Calendar,方便处理时间
        calendar.setTime(firstDate);
        // 7) 声明一个变量,接收统计出两个时间的相差的天数
        int cnt = 0;
        // 9) 将开始时间 和 结束时间通过compareTo方法进行比较,看是否是同一天,如果是同一天的话,返回0
        while(calendar.getTime().compareTo(endDate) != 0) {
            //10) 每次给开始时间去加1天(下面的1单位是天),直到天数加上来等于给定的结束时间为止,循环将不再成立,结束循环
            calendar.add(Calendar.DATE, 1);
            cnt++;
        }
        System.out.println("您活了:" + cnt + "天");
    }

}
 

你可能感兴趣的:(计算从出生到现在活了多少天)