使用获取日期时间可能有什么区别
Calendar.getInstance()
对比
new GregorianCalendar()
?
使用获取日期时间可能有什么区别
Calendar.getInstance()
对比
new GregorianCalendar()
?
查看Calendar.getInstance()的来源:
private static Calendar createCalendar(TimeZone zone, Locale aLocale) {
// If the specified locale is a Thai locale, returns a BuddhistCalendar
// instance.
if ("th".equals(aLocale.getLanguage())
&& ("TH".equals(aLocale.getCountry()))) {
return new sun.util.BuddhistCalendar(zone, aLocale);
} else if ("JP".equals(aLocale.getVariant())
&& "JP".equals(aLocale.getCountry())
&& "ja".equals(aLocale.getLanguage())) {
return new JapaneseImperialCalendar(zone, aLocale);
}
// else create the default calendar
return new GregorianCalendar(zone, aLocale);
}
因此getInstance()
将Calendar
根据您的默认值返回 aLocale
和TimeZone
.
Calendar.getInstance()
将Calendar
使用默认时区和语言环境为您提供 a ,这可能会导致 a GregorianCalendar
、 aBuddhistCalendar
或 a JapaneseImperialCalendar
。
GregorianCalendar
总会给你一个公历。