Java dátum & Idő: SimpleDateFormat, Aktuális dátum & Hasonlítsa össze

Tartalomjegyzék:

Anonim

Ebben az oktatóanyagban megtudhatja -

  • Jelenlegi dátum megjelenítése Java-ban
  • SimpleDateFormat: Dátum elemzése és formázása
  • Dátumok összehasonlítása példa

Először ismerjük meg azokat a paramétereket, amelyek egy Dátumból állnak .

Elsősorban -

  • Az év (2 vagy 4 számjeggyel)
  • A hónap (két számjeggyel, a hónap első 3 betűjével vagy a hónap teljes szavával).
  • A dátum (ez lesz a hónap tényleges dátuma).
  • A nap (az adott dátum napja - például vasárnap, hétfő, kedd stb.)

Ami a számítógépes rendszereket illeti, elég sok olyan paraméter használható, amelyek társíthatók egy dátumhoz. A téma későbbi részeiben látni fogjuk őket.

Dátum megjelenítése Java-ban

Most nézzük meg, hogy a Java hogyan adja meg nekünk a dátumot. Először meglátjuk, hogyan lehet beszerezni az aktuális

A Java egy Date osztályt biztosít a java.util csomag alatt. A csomag számos módszert kínál a dátum lejátszására.

A Date objektumot felhasználhatja a Date osztály konstruktorának meghívásával az alábbiak szerint:

import java.util.Date;class Date_Ex1 {public static void main(String args[]) {// Instantiate a Date object by invoking its constructorDate objDate = new Date();// Display the Date & Time using toString()System.out.println(objDate.toString());}}

Kimenet:

Wed Nov 29 06:36:22 UTC 2017

A fenti példa alapértelmezett formátumban látható: Ha a dátumot és az időt más formátumban szeretnénk megjeleníteni, akkor először ismerje meg a dátum formázását.

SimpleDateFormat: Dátum elemzése és formázása

Bizonyára mindannyian megtanultátok az ábécét az óvodában

….

Tanuljuk meg most a dátumformátum ABC-jeit.

Levél Dátum vagy idő komponens Példák
G Era jelző HIRDETÉS
y Év 2018
M Az év hónapja Július vagy július, vagy 07
w Hét az évben 27.
W Hét a hónapban 2
D Nap az évben 189
d Nap a hónapban 10.
F A hét hete a hónapban 2
E Nap neve a hétben Kedden vagy kedden
u A hét napszáma (1 = hétfő,…, 7 = vasárnap) 1
a Am / pm marker DÉLUTÁN
H Óra a napban (0–23) 0
k Óra a napban (1-24) 24.
K Órán reggel / este (0–11) 0
h Órán reggel / este (1–12) 12.
m Perc órában 30
s Percben a második 55
S Miliszekundum 978
z Időzóna Csendes-óceáni szokásos idő; PST; GMT-08: 00
Z Időzóna -0800
x Időzóna -08 vagy -0800 vagy -08: 00

Ne aggódjon, nem kell emlékeznie mindezekre, bármikor hivatkozhat rájuk, ha meg kell formáznia egy adott dátumot.

Hogyan használható a SimpleDateFormat?

A Java egy SimpleDateFormat nevű osztályt biztosít, amely lehetővé teszi a dátumok formázását és elemzését az Ön igényei szerint.

A fenti karakterekkel megadhatja a formátumot - Például:

1) A szükséges dátumformátum : 2012.10.23 20:20:45 PST

A megadott dátumformátum: éééé. HH.NN ÓÓ: mm: ss zzz

2) A szükséges dátumformátum: 2012. május 23., 09:30:00

A megadott dátumformátum a következő lesz : óó: hh: ss dd-MMM-yyyy

Tipp: Vigyázzon a nagybetűvel. Ha összetéveszti M-et m-vel, nem kívánt eredményeket fog elérni!

Tanuljuk meg ezt egy kódpéldával.

import java.text.SimpleDateFormat;import java.util.Date;class TestDates_Format {public static void main(String args[]) {Date objDate = new Date(); // Current System Date and time is assigned to objDateSystem.out.println(objDate);String strDateFormat = "hh:mm:ss a dd-MMM-yyyy"; //Date format is SpecifiedSimpleDateFormat objSDF = new SimpleDateFormat(strDateFormat); //Date format string is passed as an argument to the Date format objectSystem.out.println(objSDF.format(objDate)); //Date formatting is applied to the current date}}

Kimenet:

Wed Nov 29 06:31:41 UTC 201706:31:41 AM 29-Nov-2017

Dátumok összehasonlítása példa

A dátumok összehasonlításának leghasznosabb módszere a - összehasonlítTo () módszer használata.

Vessünk egy pillantást az alábbi kódrészletre-

import java.text.SimpleDateFormat;import java.text.ParseException;import java.util.Date;class TestDates_Compare {public static void main(String args[]) throws ParseException {SimpleDateFormat objSDF = new SimpleDateFormat("dd-mm-yyyy");Date dt_1 = objSDF.parse("20-08-1981");Date dt_2 = objSDF.parse("12-10-2012");System.out.println("Date1 : " + objSDF.format(dt_1));System.out.println("Date2 : " + objSDF.format(dt_2));if (dt_1.compareTo(dt_2)> 0) {System.out.println("Date 1 occurs after Date 2");} // compareTo method returns the value greater than 0 if this Date is after the Date argument.else if (dt_1.compareTo(dt_2) < 0) {System.out.println("Date 1 occurs before Date 2");} // compareTo method returns the value less than 0 if this Date is before the Date argument;else if (dt_1.compareTo(dt_2) == 0) {System.out.println("Both are same dates");} // compareTo method returns the value 0 if the argument Date is equal to the second Date;else {System.out.println("You seem to be a time traveller !!");}}}
Kimenet:
Date1 : 20-08-1981Date2 : 12-10-2012Date 1 occurs before Date 2