输入生日,计算到目前为止的天数,以及活到10000天的日期

 1 /** 
 2 * 文件注释:
 3 *     @title: Test03.java
 4 *     @package atest.dak.com
 5 *     @author: YangshuaiWang E_mail: 13272885616@163.com
 6 *     @date: 2017年3月3日 上午11:24:27 
 7 *   File_description: 
 8 *     
 9 *     
10 */ 
11  
12 package atest.dak.com;
13 
14 import java.text.ParseException;
15 import java.text.SimpleDateFormat;
16 import java.util.Date;
17 import java.util.Scanner;
18 
19 public class Test03 {
20     public static void main(String[] args) throws ParseException { //U+4E00~U+9FA5
21         Scanner scan = new Scanner(System.in);
22         System.out.println("请输入你的出生日期(yyyy/MM/dd)");
23         String birthday_str = scan.nextLine(); //读取生日;注意:不能用next(),原因不详
24         System.out.println("出生日期:" + birthday_str);
25         System.out.println("===one===");
26         SimpleDateFormat sdf = new SimpleDateFormat("yyy/MM/dd");
27         Date birthday_date = sdf.parse(birthday_str); // String -->> Date
28         long birthday_time = birthday_date.getTime(); // 获取生日的毫秒数
29         System.out.println("出生时间毫秒数:" + birthday_time);
30         System.out.println("===two===");
31         Date now_date = new Date(); //获取当前日期
32         String now_str = sdf.format(now_date); // Date -->> String
33         long now_time = now_date.getTime(); //获取当前时间的毫秒数
34         System.out.println("当前日期:" + now_str);
35         System.out.println("当前时间毫秒数:" + now_time);
36         System.out.println("===three===");
37         long D_value_time = now_time - birthday_time; // 计算当前和生日的毫秒差
38         System.out.println("当前时间和出生时间的毫秒差值:" + D_value_time);
39         long days = D_value_time / 1000 / 60 / 60 / 24; // 计算天数
40         System.out.println("你已经活了:" + days + "天啦。");
41         System.out.println("距离你活10000天还差" + (10000 - days) + "天");
42         System.out.println("===four===");
43         Date goal_date = new Date();
44         long time = birthday_time + (10000L * 24 * 60 * 60 * 1000); //计算到10000天所需的毫秒数
45         goal_date.setTime(time);
46         System.out.println("你活到10000天的日期是:" + sdf.format(goal_date)); 
47     }
48     
49 }
View Code

备注:今天三少有事,改天会进行注释;待更新中......2017年3月4日10:22:27

 

1 利用Date类来读取日期

2 利用SimpleDateFormat类实现date对象与string对象之间的相互转换

  2.1 SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

    2.1.1 string对象 -->> date对象

      date对象 -->> sdf.parse(string对象)

    2.1.2 date对象 -->> string对象

      stirng对象 = sdf.format(date对象)

 1 package lesson;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Date;
 6 
 7 /**
 8  * java.text.SimpleDateFormat
 9  *         该类允许我们按照一个指定的日期格式在String与Date之间进行相互转换
10  * @author soft01
11  *
12  */
13 public class Demo02 {
14     public static void main(String[] args) throws ParseException {
15         Date now = new Date();
16         System.out.println(now);//Mon Jan 16 00:26:48 CST 2017
17         
18         /*
19          * yyyy-MM-dd HH:mm:ss a
20          */
21         //Date类型对象 -->>  指定格式的字符串
22         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");
23         String str = sdf.format(now);  //将日期按照指定格式,然后返回一个字符串
24         System.out.println(str);
25         
26         //指定格式的字符串 -->> Date类型对象
27         Date date = sdf.parse(str);
28         System.out.println(date);
29         
30     }
31 }
date对象与string对象的相互转化
2017-3-28 16:48:48

 

转载于:https://www.cnblogs.com/NeverCtrl-C/p/6500664.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值