请输入“您的生日”,格式:yyyy-MM-dd,使用程序计算您已经来到这个世界多少天了。
生活随笔
收集整理的這篇文章主要介紹了
请输入“您的生日”,格式:yyyy-MM-dd,使用程序计算您已经来到这个世界多少天了。
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
import java.text.ParseException;
import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAccessor;
import java.util.Scanner;/*** ### 題目2* <p>* 請(qǐng)輸入“您的生日”,格式:yyyy-MM-dd,使用程序計(jì)算您已經(jīng)來到這個(gè)世界多少天了。* <p>* *提示:*** <p>* 本題利用JDK8中的LocalDate加DateTimeFormatter和Period即可實(shí)現(xiàn);* 1990年1月1日 "yyyy年MM月dd日"*/
public class Date {public static void main(String[] args) throws ParseException {DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy年M月d日");Scanner scanner = new Scanner(System.in);while (true) {//獲得兩個(gè)時(shí)間日期System.out.println("請(qǐng)輸入第1個(gè)生日:(yyy年MM月dd日)");String next1 = scanner.next();System.out.println("請(qǐng)輸入第2個(gè)生日:(yyy年MM月dd日)");String next2 = scanner.next();try {//格式化時(shí)間日期TemporalAccessor parse1 = dtf.parse(next1);TemporalAccessor parse2 = dtf.parse(next2);LocalDate from1 = LocalDate.from(parse1);LocalDate from2 = LocalDate.from(parse2);int i = from1.compareTo(from2);if (i == 0) {System.out.println("兩個(gè)人年齡相同");} else if (i > 0) {System.out.println("第1個(gè)生日的人年齡更小一些");System.out.println("輸入不太合法,第二個(gè)生日要比第一個(gè)大,重新輸吧!");continue;}//計(jì)算時(shí)間間隔Period between = Period.between(from1, from2);System.out.println("你已經(jīng)活了:" + between.getYears() + "年零" + between.getMonths() + "月零" + between.getDays() + "天了!");int years = (between.getYears() *365) + (between.getMonths() * 30) + between.getYears();System.out.println("總共活了:" + years + " 天");break;} catch (Exception e) {System.out.println("輸入非法,重新輸入!(yyy年MM月dd日)");}}}
}
總結(jié)
以上是生活随笔為你收集整理的请输入“您的生日”,格式:yyyy-MM-dd,使用程序计算您已经来到这个世界多少天了。的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: avguard.exe是安全进程吗 av
- 下一篇: c3p0-config.xml