標籤:構造 輸入日期 使用 demo 方法 fun new span 當前日期
Date,時間和日期類,這裡講util包中的而不是sql包中的
Date:表示特定的時間瞬間,精確到毫秒(1000毫秒=1秒)
時間和日期的操作都基於毫秒值
時間原點:1970年1月1日,0時0分0秒,對應毫秒值為0
得到目前時間的毫秒值:
public class DateDemo { public static void main(String[] args) { long l = System.currentTimeMillis(); //擷取當前日期的毫秒值 System.out.println(l); //1515639742854 }}
Date類的構造方法:
package demo;import java.util.Date;public class DateDemo { public static void main(String[] args) { function1(); function2(); } public static void function1(){ Date date = new Date(); System.out.println(date); //輸出:Thu Jan 11 11:09:41 CST 2018 } public static void function2(){ Date date = new Date(123456); System.out.println(date); //輸出:Thu Jan 01 08:02:03 CST 1970 }}
Date類的方法:
package demo;import java.util.Date;public class DateDemo { public static void main(String[] args) { function1(); function2(); } public static void function1(){ //日期轉毫秒 Date date = new Date(); long time = date.getTime(); System.out.println(time); //1515642454307 } public static void function2(){ //毫秒轉日期 Date date = new Date(); System.out.println(date); //Thu Jan 11 11:47:34 CST 2018 date.setTime(123123); System.out.println(date); //Thu Jan 01 08:02:03 CST 1970 }}
我們發現Date類得到的日期格式不是我們所習慣的,
所以這裡有一個DateFormat類提供格式化日期功能:
DateFormat是一個抽象類別,主要使用它的子類SimpleDateFormat類
樣本:
package demo;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;//對日期格式化public class SimpleDateFormatDemo { public static void main(String[] args) { function(); } public static void function(){ DateFormat date = new SimpleDateFormat("yyyy年MM月dd日HH點mm分鐘ss秒"); String date1 = date.format(new Date()); System.out.println(date1); //輸出:2018年01月11日12點01分鐘30秒 }}
還可以將字串轉換成日期:
樣本:
package demo;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;//對日期格式化public class SimpleDateFormatDemo { public static void main(String[] args) throws ParseException { function(); } public static void function() throws ParseException { // 這裡有異常,後面介紹 DateFormat date1 = new SimpleDateFormat("yyyy-MM-dd"); // 必須是標準格式的字串 Date date2 = date1.parse("2017-11-25"); System.out.println(date2); // 輸出:Sat Nov 25 00:00:00 CST 2017 }}
在實際開發中,不會讓使用者自行輸入日期,因為存在格式錯誤的風險
通常做一個日期控制項供使用者選擇,而不是讓使用者輸入
Java學習筆記22(Date類、DateFormat類)