有以下兩種方法獲取指定時間的毫秒值:
1.Calendar類
先由getInstance獲取Calendar對象,然后用clear方法將時間重置為(1970.1.1 00:00:00),接下來用set方法設定指定時間,最后用getTimeMillis獲取毫秒值。
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(2018,0,1); long millis = calendar.getTimeInMillis();
2.java.util.Date類+SimpleDateFormat類
先由時間格式創建SimpleDateFormat對象,然后通過parse方法由指定時間創建Date對象,最后由Date對象的getTime方法獲取毫秒值。
SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd");
Date date = null; try { date = format.parse("2018-01-01"); } catch (ParseException e) { // TODO 自動生成的 catch 塊 e.printStackTrace(); } long millis = date.getTime();
顯然第一種方法更好:只用建立一個對象,就可以反復設定時間,獲取毫秒值。第二種方法至少要創建兩個對象,而且每設定一個時間都要創建一個新的Date對象,還有可能拋出異常,不推薦使用,僅作了解。