没有毫秒的日历与毫秒为 0 的日历

Calendar with no milliseconds vs Calendar with milliseconds that are 0

我不知道如何判断 Calendar 对象是在没有毫秒的情况下创建的 还是 以毫秒创建的 Calendar 对象恰好有一个值0.

我需要区分时间戳

2018 04 30 13:44:55 -0500
and
2018 04 30 13:44:55.000 -0500

后者表示打卡器报时,精度为毫秒,而前者只报时间,精度为秒。所以在后一种情况下我想显示“000”,但在前一种情况下我不想显示。

Calendar.get(Calendar.MILLISECONDS) = 0显然没有解决这个问题。关于如何做到这一点有什么想法吗?

Calendar::isSet(int) 方法将测试是否已设置特定字段。