Extrakcia roku, mesiaca a dňa od dátumu v Jave

1. Prehľad

V tomto krátkom tutoriáli sa pozrieme na to, ako extrahovať rok, mesiac a deň z daného Dátum v Jave.

Pozrime sa na to, ako tieto hodnoty extrahovať pomocou pôvodného odkazu java.util.Date triedy a tiež pomocou novej knižnice dátumu a času v Java 8.

V prostredí Java 8 bola z mnohých dobrých dôvodov zavedená úplne nová knižnica dátumu a času. Okrem iných výhod nová knižnica poskytuje lepšie API pre operácie, ako je napríklad extrakcia Rok, Mesiac, Deň atď. od daných Dátum.

A ak hľadáte podrobnejší článok o novej knižnici dátumu a času, pozrite sa sem.

2. Používanie Java 7

Za dané java.util.Date extrahovať jednotlivé polia ako napr Rok, Mesiac, Deň Prvý krok, ktorý musíme urobiť, je previesť ho na Kalendár inštancia:

Dátum dátum = // inštancia dátumu Calendar calendar = Calendar.getInstance (); calendar.setTime (dátum);

Keď už máme Kalendár inštanciu môžeme priamo vyvolať dostať metódou a zadajte konkrétne pole, ktoré chceme extrahovať.

Môžeme použiť konštanty prítomné v Kalendár extrahovať konkrétne polia.

2.1. Získajte rok

Ak chcete extrahovať rok, môžeme sa dovolať dostať prechodom Kalendárny rok ako argument:

calendar.get (Calendar.YEAR);

2.2. Získajte mesiac

Podobne na extrakciu mesiac, môžeme sa dovolať dostať prechodom Kalendár. MESIAC ako argument:

calendar.get (Calendar.MONTH);

Upozorňujeme, že mesiace v Kalendár majú nulový index; pre január táto metóda vráti 0.

2.3. Získajte deň

Nakoniec extrahujte deň, vzývame dostať prechodom Kalendár.DAY_OF_MONTH ako argument:

calendar.get (Calendar.DAY_OF_MONTH);

3. Používanie Java 8

Nové java.time balíček obsahuje niekoľko tried, ktoré je možné použiť na reprezentáciu Dátum.

Každá trieda sa líši o ďalšie informácie, ktoré ukladá Dátum.

Základ LocalDate iba obsahuje informácie o dátume, zatiaľ čo LocalDateTime obsahuje dátum a čas.

Podobne aj pokročilejšie triedy ako napr OffsetDateTime a ZonedDateTime obsahuje ďalšie informácie o offsetu od UTC a informácie o časové pásmo resp.

V každom prípade všetky tieto triedy podporujú priame metódy na získanie informácií o roku, mesiaci a dátume.

Poďme preskúmať tieto metódy na získanie informácií z a LocalDate názov inštancie localDate.

3.1. Získajte rok

Extrahovať Rok, LocalDate jednoducho poskytuje getYear metóda:

localDate.getYear ();

3.2. Získajte mesiac

Podobne vyťažiť Mesiac, používame getMonthValue API:

localDate.getMonthValue ();

Na rozdiel od Kalendár, Mesiace v LocalDate sú indexované od 1; za január sa to vráti 1.

3.3. Získajte deň

Nakoniec extrahovať Deň, máme getDayOfMonth metóda:

localDate.getDayOfMonth ();

4. Záver

V tomto rýchlom výučbe sme preskúmali, ako extrahovať celočíselné hodnoty Rok, Mesiac a Deň od Dátum v Jave.

Ukázali sme, ako tieto hodnoty extrahovať pomocou starého Dátum a Kalendár triedy, ako aj nová knižnica času a času Java8.

Kompletný zdrojový kód úryvkov použitý v tejto príručke je k dispozícii na stránkach Github.


$config[zx-auto] not found$config[zx-overlay] not found