叫刘哥哥 记录,分享 联系方式:liuyingshengc4@sina.cn QQ:894347276

[java demo] Java 年龄计算

package study3;
import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.Scanner;

public class AgeCalculator {
	DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-M-d");
	
	public Period calculateAge(LocalDate birthday){
		LocalDate today = LocalDate.now();
		return Period.between(birthday , today);
	}
	
	public LocalDate getBirthday(){
		Scanner scanner = new Scanner(System.in);
		LocalDate birthday;
		while(true){
			System.out.println("Please enter your birthday" + "in yyyy-mm-dd format (e.g 1980-9-28)");
			String input = scanner.nextLine();
			try{
				birthday = LocalDate.parse(input , formatter);
				return birthday;				
			}catch(DateTimeParseException e){
				System.out.println("Error! please try again");
			}
		}
	}
	
	public static void main(String[] args){
		AgeCalculator ageCalculator = new AgeCalculator();
		LocalDate birthday = ageCalculator.getBirthday();
		Period age = ageCalculator.calculateAge(birthday);
		System.out.println(birthday);
		System.out.printf("Today you are %d years , %d months" + "and %d days old%n" , age.getYears() , age.getMonths() , age.getDays());
	}
}


作者:营生 分类:Java 浏览:3054 评论:0
留言列表
发表评论
来宾的头像