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 }
備注:今天三少有事,改天會進行注釋;待更新中......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 }
2017-3-28 16:48:48
