簡體   English   中英

為什么不同的長值轉換為相同的日期/時間?

[英]Why are different long values converted into the same date/time?

public static void getTime() {
    SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss");
    Time t1 = new Time(Long.parseLong("1369213412435"));
    Time t2 = new Time(Long.parseLong("1369213412245"));
    System.out.println(sdf.format(t1));
    System.out.println(sdf.format(t2));
}

為什么打印上面的代碼,

2013-05-22 17:03:32
2013-05-22 17:03:32

這兩個日期的差別僅為毫秒(435或245),您可以在格式中忽略這些日期。

采用:

 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

看到不同的價值觀。

唯一的區別在於毫秒(435 vs 245)。

這兩個日期的差異是毫秒,即435245

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

這樣做。

采用 :

 SimpleDateFormat sdf = new SimpleDateFormat(
                    "yyyy-MM-dd HH:mm:ss:SSS"); 

你將看到毫秒部分的差異。

除了毫秒部分,在某些情況下,兩個長值可以提供相同的日期。

即,低於兩個長值具有相同的毫秒並且是不同的

  • 1458065184000
  • 1458021984000

如果你使用dd-MM-yyyy hh:mm:ss SSS那么它會給你相同的結果。

這里捕獲的是hh(12小時格式)與HH(24小時格式)。

使用它將得到准確的結果dd-MM-yyyy HH:mm:ss SSS

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM