我有这个方法:
void updatePet(String userid, int index, int happiness, Date lastUpdated, PetLifePhase state, Date created)
记录所有对它的调用(通过反射Proxy
)。参数为String.valueOf()
'并且连接在一起:
updatePet(xxxxxxxx,18,-96,Wed Apr 17 08:10:11 UTC 2013,ACTIVE,2013-04-10 08:01:12.442)
注意两个Date
参数的输出:
lastUpdated
:Wed Apr 17 08:10:11 UTC 2013
(跟随Date.toString()
的Javadoc)created
:2013-04-10 08:01:12.442
怎么样,为什么,何时,是吗?为什么相同的方法输出两种不同的格式?我查看了这个toString()
的来源,但输出第一种格式非常难以编码,没有if
可能会另有决定。
答案 0 :(得分:0)
我的猜测是created
属于子类Timestamp,其格式为yyyy-mm-dd hh:mm:ss.fffffffff
。
答案 1 :(得分:0)
你确定你的两个Date
实际上是Date
的同一类型吗?
它们可能是Date
以不同方式覆盖toString()
方法的子类型(例如覆盖Timestamp
的{{1}})。
答案 2 :(得分:0)
几乎可以说,您有一个参数是java.util.Date
的实例,另一个参数是java.sql.Date
或java.sql.Timestamp
的实例