1. 程式人生 > 其它 >計算一個人出生多少天(Java)

計算一個人出生多少天(Java)

技術標籤:關於Data的那些事java

計算出一個人已經出生了多少天

思路:
獲取當前時間對應毫秒數
獲取自己出生時的對應毫秒數
兩個時間相減(當前時間-出生日期)


package work_16;

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

public class Test_3 {
    public static void main
(String[] args) throws ParseException { //計算出一個人已經出生了多少天 /** * 首先通過scanner獲取到出生日期 * 然後將string型別的出生日期轉換成Data格式 * 緊接著就是將Data格式的出生日期換算成方便計算的毫秒 * 再獲取當前的日期 * 將當前日期換算成毫秒 * 將當前日期和輸入的出生日期做差值,然後再將毫秒換算成天數,然後結束 **/ Scanner sc =
new Scanner(System.in); System.out.println("請輸入您的出生日期(格式為yyyy-MM-dd):"); String data_of_birth_String =sc.next();//獲取鍵盤輸入的資料 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//parse()把字串的出生日期,解析為Data格式的出生日期 Date birthdayDate = sdf.parse(data_of_birth_String)
; long data_of_birth_time = birthdayDate .getTime(); //獲取當前日期 long todayTime = new Date().getTime(); long time = todayTime - data_of_birth_time; if (time < 0 ){ System.out.println("您還沒出生呢!!!"); }else { System.out.println("您出生了:" + time / 1000 / 60 / 60 / 24 + "天"); } /**遇到的問題,丟擲異常為ParseException並不是平常的IOException異常 * 注意:“ParseException是一個異常類,表示解析異常, * 這裡用import引入這個類,比如日期或者字串格式化會丟擲這個異常。” **/ } }

在這裡插入圖片描述
在這裡插入圖片描述

注意:在剛開始寫這份程式碼的時候,並沒有進行if條件的判斷,也就是說沒有驗證程式碼中 time<0 的情況,這就是一個邏輯上的不嚴謹。