浏览代码

新增获取时间戳工具方法

woody 2 年之前
父节点
当前提交
0763337365
共有 1 个文件被更改,包括 59 次插入0 次删除
  1. 59 0
      framework-base/src/main/java/com/chelvc/framework/base/util/DateUtils.java

+ 59 - 0
framework-base/src/main/java/com/chelvc/framework/base/util/DateUtils.java

@@ -1232,4 +1232,63 @@ public final class DateUtils {
         }
         return t1 > now ? date : other;
     }
+
+    /**
+     * 获取当前时间戳
+     *
+     * @return 时间戳
+     */
+    public static long timestamp() {
+        return timestamp(true);
+    }
+
+    /**
+     * 获取当前时间戳
+     *
+     * @param millis 是否保留毫秒数
+     * @return 时间戳
+     */
+    public static long timestamp(boolean millis) {
+        return timestamp(System.currentTimeMillis(), millis);
+    }
+
+    /**
+     * 获取日期时间戳
+     *
+     * @param date 日期对象
+     * @return 时间戳
+     */
+    public static long timestamp(@NonNull Date date) {
+        return timestamp(date, true);
+    }
+
+    /**
+     * 获取日期时间戳
+     *
+     * @param date   日期对象
+     * @param millis 是否保留毫秒数
+     * @return 时间戳
+     */
+    public static long timestamp(@NonNull Date date, boolean millis) {
+        return timestamp(date.getTime(), millis);
+    }
+
+    /**
+     * 获取时间戳
+     *
+     * @param timestamp 原始时间戳
+     * @param millis    是否保留毫秒数
+     * @return 时间戳
+     */
+    public static long timestamp(long timestamp, boolean millis) {
+        if (millis) {
+            return timestamp;
+        }
+        int millisecond = (int) (timestamp % 1000);
+        timestamp = timestamp / 1000;
+        if (millisecond >= 500) {
+            timestamp++;
+        }
+        return timestamp * 1000;
+    }
 }