時間戳和正規表示式

許君。發表於2021-01-02

時間戳和正規表示式

時間戳

一、定義

時間戳是一份能夠表示一份資料在一個特定時間點已經存在的完整的可驗證的資料。 它的提出主要是為使用者提供一份電子證據, 以證明使用者的某些資料的產生時間。

二、精度

  1. 精確到秒
  2. 精確到毫秒

三、時間戳和時間的轉換

Date————>離不開SimpleDateFormat(格式化時間)/或者此類下 setTime(); 或者 getTime();

​ 若只獲取年月日:LocalDate————>離不開DateFormatter(格式化日期)

四、生成時間戳

法一:

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

public class time{

    public static void main(String[] args){
        Date date = new Date();//為系統當前時間
        String strDateFormat = "yyyy-MM-dd HH:mm:ss";//設定日期格式
        SimpleDateFormat sdf = new SimpleDateFormat(strDateFormat);
        System.out.println(sdf.format(date));
    }
    
}

執行結果:

在這裡插入圖片描述

#注:定義 SimpleDateFormat 時 new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); 裡面字串頭尾不能有空格,有空格那是用轉換時對應的時間空格也要有空格(兩者是對應的)

在這裡插入圖片描述

法二:

 public static void main(String[] args){
        long totalSeconds = System.currentTimeMillis() / 1000;
        //獲取unix時間戳至今的秒數

        long currentSeconds = totalSeconds % 60; //獲取當前秒數

        long currentMinutes = totalSeconds / 60 % 60; //獲取當前分鐘數

        long currentHours = totalSeconds / 3600 % 24 + 8;
        //獲取當前小時數  北京屬於東八時區,時間要在格林尼治時間(GMT)基礎上+8
        
        System.out.println(currentHours);
        System.out.println(currentMinutes);
        System.out.println(currentSeconds);

    }

執行結果:

在這裡插入圖片描述

#注:慎用 System.currentTimeMillis() 。同樣的程式碼迴圈執行數次,分析每一次的執行時間,發現一大部分執行時間為小於1毫秒,但其間也發現有相當一部分的執行時間有非常大的跳躍,而且時間都近似16毫秒左右。這個1毫秒和16毫秒結果,以計算機的執行速度看,差距是驚人的。因為這個方法呼叫了個 native方法,獲取的時間精度會依賴於作業系統的實現機制

正規表示式(regular expression)——瞭解

一、概念

是一種字串匹配的模式

二、作用

  1. 檢查一個字串是否含有某種子串
  2. 替換匹配的子串
  3. 提取某個字串中匹配的子串
  4. 某些介面看到的讓輸入使用者名稱密碼註冊登入的介面內部語法就用到了正規表示式

三、常用正規表示式

在這裡插入圖片描述

正規表示式——指令碼之家(現用現查叭,記不住,害)

相關文章