一、Timestamp和Date的含義和區別
Timestamp是java.util包中的一個類,表示時間戳,其精確度到毫秒級別,通常用於記錄事件發生的時間。
Date也是java.util包中的一個類,表示日期和時間,其精確度只到秒級別,用於表示年月日時分秒。
在Java中,Timestamp和Date都有其獨特的用途,而相互轉換也十分常見,本示例就是將Timestamp轉為Date。
二、Java Timestamp轉Date代碼示例
示例代碼如下,通過將Timestamp轉為Long類型,再將Long類型轉為Date類型,即可實現轉換:
import java.sql.Timestamp; import java.util.Date; public class TimestampToDateExample { public static void main(String args[]) { // 創建一個Timestamp實例 Timestamp timestamp = new Timestamp(System.currentTimeMillis()); // 將Timestamp轉為Long類型 Long timestampLong = timestamp.getTime(); // 將Long類型轉為Date類型 Date date = new Date(timestampLong); // 打印結果 System.out.println("Timestamp:" + timestamp); System.out.println("Date:" + date); } }
以上代碼實現了將一個Timestamp類型的實例轉為Date類型的實例,通過getTime()方法將Timestamp轉為Long類型,再通過Date(long date)的構造函數將Long類型轉為Date類型。
三、代碼解析
這個代碼示例可以分為三步實現。第一步是創建一個Timestamp實例,這裡使用的是當前時間,也可以是從數據庫中獲取的Timestamp類型數據。
第二步是將Timestamp轉為Long類型,這裡通過調用getTime()方法實現。這個方法返回自1970年1月1日 00:00:00 GMT以來正毫秒數。該值確定什麼時候發生了特定的TimeStamp等於的時間。
第三步是將Long類型轉為Date類型,這裡使用Date(long date)的構造函數,注意這個構造函數接收的參數是自1970年1月1日 00:00:00 GMT以來毫秒數,而不是自Timestamp開始的毫秒數。所以我們必須先通過getTime()方法將Timestamp類型的毫秒數轉為Long型,再傳給Date(long date)構造函數。
四、小結
本篇文章以Java Timestamp轉Date為主題,對Timestamp和Date的含義和區別進行了講解,並通過代碼實現了將Timestamp類型的實例轉為Date類型的實例。
Timestamp和Date的轉換在Java開發中經常使用,開發者需要熟練掌握其轉換方法。
原創文章,作者:NBTHZ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/329651.html