BirthdayCheck

 1 package com.project;
 2 
 3 import java.text.SimpleDateFormat;
 4 import java.util.Calendar;
 5 import java.util.Date;
 6 import java.util.Scanner;
 7 
 8 public class Birthday {
 9 
10     public static void main(String[] args) throws Exception {
11         // TODO Auto-generated method stub
12         
13         Scanner input = new Scanner(System.in);
14         System.out.println("请输入你的出生日期:(例:1999-9-9)");
15         String birthday = input.next();
16         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
17         Calendar cal = Calendar.getInstance();
18         Date mybirthday = formatter.parse(birthday);
19         cal.setTime(new Date());
20         int yearNow = cal.get(Calendar.YEAR);//
21         int monthNow = cal.get(Calendar.MONTH);
22         int dayNow = cal.get(Calendar.DAY_OF_MONTH);
23         cal.setTime(formatter.parse(birthday));
24         int birthYear = cal.get(Calendar.YEAR);
25         int birthMonth = cal.get(Calendar.MONTH);
26         int birthDay = cal.get(Calendar.DAY_OF_MONTH);
27         int num = 0;
28         if(monthNow == birthMonth&&dayNow == birthDay){
29             System.out.println("祝你生日快乐!!");
30         }
31         
32             while(birthYear < yearNow){
33                     cal.set(Calendar.YEAR,cal.get(Calendar.YEAR)+1);
34                     birthYear=cal.get(Calendar.YEAR);
35                     num++;
36             }
37         Date ed=new Date();
38         Date sd=cal.getTime();
39         int days=0;
40             if(((sd.getTime() - ed.getTime()) / (3600 * 24 * 1000))> 0 ){
41                 days=(int)((sd.getTime() - ed.getTime()) / (3600 * 24 * 1000));
42                 System.out.println("距离你" +num+ "周岁生日还有" + days + "天");
43             }else{
44                 cal.set(Calendar.YEAR,cal.get(Calendar.YEAR)+1);
45                 sd=cal.getTime();
46                 days=(int)((sd.getTime() - ed.getTime()) / (3600 * 24 * 1000));
47                 num +=1;
48                 System.out.println("距离你" +num+ "周岁生日还有" + days + "天");
49            
50           }
51         long second1 = new Date().getTime();
52         long second2 = mybirthday.getTime();
53         int day1 = (int)((second1 - second2)/(1000*60*60*24));
54         System.out.println("你在这个世界上已经活了" +day1+ "天");
55         
56         input.close();
57     }
58 
59 }
View Code

 

posted @ 2015-04-19 12:43  betterhardderfastter  阅读(215)  评论(0编辑  收藏  举报
洋洋