2011-08-07 75 views
21

Calendar.getInstance()是否像普通单身人士一样工作,如果我在别处调用getInstance并设置日期,月份等,那么如果我在其他地方调用Calendar.getInstance()那些字段将被设置为我之前设置的任何内容?换句话说,如果我想让Calendar.getInstance()返回Calendar对象与当前时间和日期等,我需要做什么?只需拨打clear()?是否将实例重置为当前时间等?Calendar.getInstance()...基本问题

我很抱歉,如果这是一个愚蠢的问题。

+7

试试吧并看看会发生什么。你所要做的就是获取一个实例并显示该对象。然后你可以睡几秒钟。然后再次获取该实例并显示该值,并查看它们是相同还是不同。 – camickr

回答

43

不,Calendar.getInstance()未返回单例实例。使用getInstance()的要点在于,在决定要返回哪个日历实现以及如何初始化它时,将考虑默认语言环境和时区。

所以你不需要做任何事情来获得当前时间的第二个日历,只需再次拨打Calendar.getInstance()即可。

+24

@camickr学习如何使用API​​文档是一项非常有价值的技能,但我不认为应该帮助别人得到一个赞成票。 – KyleM

+0

这并不能帮助海报学习如何解决问题。人们需要学习如何阅读API。 – camickr

+0

我希望更多的人会倒下。我们会通过教会他们如何依靠自己做一些基本的问题解决,然后在论坛上发布一个问题来帮助海报。别担心,无论如何,会有很多人向你表示同情。 – camickr

11

一般来说,您可以使用API​​文档(请参阅源文件)来解答这样的问题。从API文档:

Calendar的getInstance方法返回一个Calendar对象,其日历 领域已经与当前日期和时间初始化:

 Calendar rightNow = Calendar.getInstance(); 

来源: http://download.oracle.com/javase/1.5.0/docs/api/java/util/Calendar.html

+7

@camickr:KyleM给出了一个完美的例子,展示了API文档如何有用。您认为这对于您应该查阅API文档的原因很有帮助吗? – Jeremy

+5

@camickr谁在乎?你是我的StackOverflow警察吧? OP问了一个问题,我很好地给出了答案。也许OP将在下次使用API​​文档时看到他是我从中获得信息的地方。 – KyleM

+1

不,因为现在海报实际上并不需要读取API。如果海报阅读API,他们会发现准确的声明,因此无需在此重新发布。另外,当他们正在阅读API时,他们会注意到其他一些有用的方法,他们可以在将来使用它们。 – camickr