43 votes

Obtenir de l'actuel datetime en utilisant le Calendrier.getInstance() vs new GregorianCalendar()

Quelle pourrait être la différence entre obtenir datetime en utilisant le Calendrier.getInstance() vs new GregorianCalendar()?

49voto

user802421 Points 3315

À la recherche de la source de Calendrier.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);    
}

Donc, getInstance() retournera Calendar basé sur votre défaut Locale et TimeZone.

32voto

João Silva Points 36619

Calendar.getInstance() va vous donner un Calendar en utilisant le fuseau horaire par défaut et les paramètres régionaux, ce qui peut entraîner un GregorianCalendar, un BuddhistCalendar, ou un JapaneseImperialCalendar.

GregorianCalendar toujours de vous donner, ainsi, un calendrier Grégorien.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X