Java 8 DateFormatter semaine du mois et de l'année différence de symboles clés


, je suis nouveau sur java.time. S'il vous plaît, soyez patient. Quelle est la différence entre

  Symbol  Meaning                     Presentation      Examples
  ------  -------                     ------------      -------
    F       week-of-month               number            3
    W       week-of-month               number            4 

N'est-ce pas juste

  Symbol  Meaning                     Presentation      Examples
  ------  -------                     ------------      -------
    F/W       week-of-month               number            3

Et

  Symbol  Meaning                     Presentation      Examples
  ------  -------                     ------------      -------
   Y       week-based-year             year              1996; 96
   u       year                        year              2004; 04
   y       year-of-era                 year              2004; 04

Https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html

Author: assylias, 2016-11-02

1 answers

La différence entre u et y a déjà été abordés: Quelle est la différence entre l'année et de l'année de l'ère?

Différence entre W et F

Il y a un bogue dans le javadoc pour F.

W c'est la semaine du mois, représenté par Weekfields::weekOfMonth:

Cela représente le concept du nombre de semaines dans le mois où les semaines commencent un jour fixe de la semaine, comme le lundi.

F est-alignées jour de la semaine dans le mois, représenté par ChronoField.ALIGNED_DAY_OF_WEEK_IN_MONTH:

Cela représente le concept du nombre de jours dans la période d'une semaine où les semaines sont alignées sur le début du mois.

F se comporte de la même façon dans DateTimeFormatter et SimpleDateFormat.

Exemple: si vous utilisez 2016-11-07 comme entrée, W retournera 2 (2e semaine du mois) mais F retournera 7 (7e jour de la première semaine alignée, qui commence le 1er mois).

 2
Author: assylias, 2020-06-20 09:12:55