Java 日期處理類


日期處理類

Date類

  • 當前日期時間 java.util.Date
import java.util.Date;

public class TestDemo {
	public static void main(String [] args) {
		Date date = new Date();
		System.out.println(date);
	}
}
  • 運行結果:
Sat Jun 29 21:56:04 CST 2019

上述的結果表示的就是當前的日期時間,為國際標准的格式;

當然我們可以使用其他格式輸出日期時間

構造方法

  • 無參構造: public Date()

  • 有參構造: public Date(long date)

    • 接收 long 型數據,相當於把long數據轉為Date
  • 轉換為 long 型: public long getTime()

    • 將Date數據轉為long型數據,便於格式化輸出處理

system.currentTimeMillis() :取得當前的日期時間並以long型返回

import java.util.Date;

public class TestDemo {
	public static void main(String [] args) {
		long time = System.currentTimeMillis();// 取得系統時間		
		Date date = new Date( time );
		System.out.println(date);
        System.out.println(date.getTime());
	}
}
  • 運行結果:
Sat Jun 29 22:07:16 CST 2019
1561817236726

日期格式化*

SimpleDateFormat *

  • 包:java.text.SimpleDateFormat

    • 專門實現國際化開發的包
    • simpleDateFormat是專門處理日期格式的類,轉換為String顯示
  • 構造方法*:

    • public SimpleDateFormat(String pattern)
  • 將Date轉換為String*:

    • public final String format( Date date )
  • 將String轉換為Date*:

    • public Date parse(String source) throws ParseException

常見的轉換格式單位

單位 簡寫(使用) 表示
yyyy year
MM month
dd Day in month
HH Hour in day(0~23)
mm Minute in hour
ss Second in minute
毫秒 S Millisecond

實例

日期格式的轉換

  • 將Date數據轉為 String型數據
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestDemo {
	public static void main(String [] args) {
		Date date = new Date() ; 
		SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
		String str = SDF.format(date);
		// format: 將Date型數據變為 String型數據
		System.out.println(str);
	}
}
  • 運行結果:
2019-06-29 22:24:50:777

程序功能簡單說:

首先是Date獲取時間對象,通過 SimpleDateFormat類進行日期格式化,在然后通過 format()方法將日期格式轉為輸出String型。

字符串轉為日期

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestDemo {
	public static void main(String [] args) throws ParseException {
		String str = "2012-12-25 00:00:00:000" ;
		SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
		Date date = SDF.parse(str) ; //將SDF(String型)轉為Date型
		System.out.println(date);
	}
}
  • 運行結果:
Tue Dec 25 00:00:00 CST 2012

總結:

  • Date 與 String 類之間的轉換依靠:SimpleDateFormat

  • String與基本數據類之間轉換依靠:String。valueOf()

  • long 與 Date 轉換依靠的是 Date 類提供的構造以及 getTime()

Calendar 類

  • 日期計算

  • Calendar是一個抽象類

import java.text.ParseException;
import java.util.Calendar;

public class TestDemo {
	public static void main(String [] args) throws ParseException {
		Calendar cal = Calendar.getInstance(); // 取得本類對象
		StringBuffer buf = new StringBuffer();
		// buf 依次 append 年 月 日 時 分 秒 毫秒
		buf.append(cal.get(Calendar.YEAR)).append("-");
		buf.append(cal.get(Calendar.MONTH) + 1).append("-");
		buf.append(cal.get(Calendar.DAY_OF_MONTH)).append("  ");
		buf.append(cal.get(Calendar.HOUR_OF_DAY)).append(":");
		buf.append(cal.get(Calendar.MINUTE)).append(":");
		buf.append(cal.get(Calendar.SECOND)).append(":");
		buf.append(cal.get(Calendar.MILLISECOND));
		// 可以在append中,對日期時間進行計算操作
		System.out.println(buf);
	}
}

總結

  • 數據庫中的日期型數據使用 java.uitl.Date 表示
  • 代碼模型:SimpleDateFormat 類實現String與Date型數據的互相轉換


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM