JAVA-date(计算时间差)

package demo;

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

/**
 * @author Weirdo-world 计算从出生到现在生活了多少天
 */
public class Demo6 {
    public static void main(String[] args) {
        Date date = new Date();
        Scanner sc = new Scanner(System.in);
        SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
        System.out.println("请输入您的出生年月日(格式为:年-月-日):");
        String time = sc.next();
        try {
            Date d = sdf.parse(time); // 将日期和时间的字符串表示形式转换为其等效的 DateTime。
            // date.getTime() 返回时间的毫秒数值
            int year = (int) ((date.getTime() - d.getTime()) / (1000 * 60 * 60 * 24)) / 365; // 计算年
            int day = (int) ((date.getTime() - d.getTime()) / (1000 * 60 * 60 * 24)); // 计算天
            System.out.println("您距今已生活了" + year + "年," + "总共" + day + "天。");

        } catch (ParseException e) {
            System.out.println("输入日期格式不对!!!");
        }
        sc.close();
    }
}

 

你可能感兴趣的:(Java,date时间)