– Eszembe jutott, hogy szeretnék egy kicsit mesélni a datolyákkal való munkáról.

"Már mondtad nekem, hogy a Java-ban van a Date osztály, és ezt az osztályt használhatom a dátumokkal való munkavégzéshez."

"Hmm. Nos, a randevúzási osztály egy ideje elavult."

"Most ajánlott inkább a Calendar osztályt használni, amelyben van egy getTime() metódus, amely az aktuális dátumot adja vissza."

"Ez egy naptárobjektum, amelyet általában létrehoznak:"

Hozzon létre egy naptárobjektumot
Calendar cal = Calendar.getInstance();

"A módszer meghívásakor a megfelelő naptár jön létre a számítógép beállításai alapján."

– A „helyes” naptár? Ez azt jelenti, hogy több is van?

"Igen. Nos, pontosabb lenne azt mondani, hogy "releváns". A tény az, hogy a Földnek nem egy, hanem sok naptárja van. Szinte mindegyik valamilyen valláshoz vagy országhoz kapcsolódik."

"Az év eltérő lehet attól függően, hogy melyik országban tartózkodik."

"Íme néhány példa a leggyakoribb naptárakról."

Naptári osztály A naptár neve
Gergely naptár Keresztény Gergely-naptár
Buddhista naptár Buddhista naptár
Japán császári naptár Japán császári naptár

"Van még a kínai naptár, az iszlám naptár és még sok más."

"Látom."

"Az aktuális dátum megtekintéséhez a következő kódot kell beírnia:"

Szerezze meg az aktuális időt
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();

"A Naptár osztály számos módszerrel rendelkezik, amelyek segítségével gyorsan megkaphat bármilyen információt a dátumról és az időpontról."

Kód Hozzászólások
Calendar calendar = Calendar.getInstance();

int era = calendar.get(Calendar.ERA);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);

int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
korszak 
év 
hónap 
a hónap napja

a hét napja (hétfő, kedd, szerda,…)
óra 
perc 
másodperc

"Néha tényleg csak egy darabot kell megszereznie a rendelkezésre álló információkból. Például az aktuális év vagy a hét napja."

"De néha egyszerűen meg kell jeleníteni a dátumot a megfelelő formátumban."

"Például a naplófájlban vagy valahol máshol."

"Vagy készíts egy formátumot, amit a felhasználó testre szabhat. Mit csinálsz ilyenkor?"

"Erre is vannak speciális osztályok. A SimpleDateFormat osztály tökéletesen megfelel az általad leírt feladatnak:"

Hogyan jeleníthet meg egy dátumot a kívánt formátumban
Calendar calendar = Calendar.getInstance();

DateFormat formatter = new SimpleDateFormat("MM-DD-YY");

String message = formatter.format(calendar.getTime());

"Ah. Emlékszem. Már elmagyaráztál nekem néhányat a SimpleDateFormatról , de őszintén szólva nem sokra emlékszem."

"Minden nagyon egyszerű. Létrehoz egy SimpleDateFormat objektumot, és átadja neki a kívánt dátummintát. Ezután meghívja a formázási metódust, és megadja az átadott dátumot a kívánt formában."

"Érdekesnek hangzik. Több részletet szeretnék."

"Tessék. A részletek. Íme néhány betű, amely használható a dátummintában:"

Levél Leírás
G Felváltotta a korszak (Kr. e. vagy Kr. e.)
y Cserélve az évszámmal
M A hónap lecserélte
w Hetek száma az évben
W Hetek száma a hónapban
D Napok száma az évben
d A hónap napja
F A hét napja a hónapban
E A hét napja
a délelőtt/délután (dél előtt vagy után)
H Óra 24 órás formátumban (0-23)
k Óra 24 órás formátumban (1-24)
K Óra 12 órás formátumban (0-11)
h Óra 12 órás formátumban (1-12)
m Percek
s Másodpercek
S Ezredmásodperc
z Időzóna, a következőképpen formázva: Pacific Standard Time, PST
Z Időzóna, a következőképpen formázva: -0800/td>

"Csodálatos! Ez nagyjából minden, amire szüksége van."

– Még mindig van néhány árnyalat a betűk ismétlésével kapcsolatban.

"Ha YY-t írsz, akkor az év utolsó két számjegyét kapod. Ha azt írod, hogy YYYY, akkor az év mind a négy számjegyét kapod."

"A hónapok is bonyolultak. Az MM a hónap száma. Az MMM a hónap hárombetűs rövidítése, azaz Jan, Feb, Mar, Apr, May stb. Az MMMM a hónap teljes neve. ."

"Megjelenítheti a hét teljes napját is (EEEE használatával), vagy csak az első két betűt (EE használatával)."

"Köszönöm, Rishi. Ez a SimpleDateFormat osztály valóban hasznos. Most már tudom."

"Élvezd a használatát! És sok sikert!"