Java-päiväys & Aika: SimpleDateFormat, Nykyinen päivämäärä & Vertailla

Sisällysluettelo:

Anonim

Tässä opetusohjelmassa opit -

  • Näytä nykyinen päivämäärä Java-muodossa
  • SimpleDateFormat: Päivitä ja muotoile päivämäärät
  • Vertaa päivämääriä -esimerkki

Ymmärretään ensin parametrit, jotka koostuvat päivämäärästä .

Se sisältää ensisijaisesti -

  • Vuosi (joko 2 tai 4 numeroa)
  • Kuukausi (joko 2 numeroa, ensimmäinen 3 kirjainta kuukauden tai koko sana kuukausi).
  • Ajankohta (se on todellinen päivä kuukauden).
  • Päivä (päivän tiettynä ajankohtana - kuten su, ma, ti, jne.)

Tietokonejärjestelmien osalta on melko paljon parametreja, joita voidaan käyttää päivämäärään liittämiseen. Näemme ne tämän aiheen myöhemmissä osissa.

Näytä päivämäärä Java-muodossa

Katsotaan nyt, kuinka Java antaa meille päivämäärän. Ensinnäkin näemme kuinka saada nykyinen päivämäärä-

Java tarjoaa päivämääräluokan java.util-paketin alle. Paketti tarjoaa useita tapoja pelata päivämäärää.

Voit käyttää Date-objektia kutsumalla Date-luokan rakentajan seuraavasti:

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());}}

Tuotos:

Wed Nov 29 06:36:22 UTC 2017

Yllä olevassa esimerkissä oletusmuodossa näytetty päivämäärä: Jos haluamme näyttää päivämäärän ja kellonajan toisessa muodossa, ymmärrä ensin päivämäärän muotoilu.

SimpleDateFormat: Päivitä ja muotoile päivämäärät

Teidän kaikkien on oltava oppineet aakkoset lastentarhassanne

….

Oppikaa nyt päivämäärämuodon ABC: t.

Kirje Päivämäärä tai kellonaika Esimerkkejä
G Era-tunnus ILMOITUS
y Vuosi 2018
M Kuukausi vuodessa Heinä- tai heinäkuu tai 07
w Viikko vuodessa 27
W Viikko kuukaudessa 2
D Päivä vuodessa 189
d Päivä kuukaudessa 10
F Viikonpäivä kuukaudessa 2
E Päivän nimi viikossa Tiistai tai ti
u Viikkopäiväpäivä (1 = maanantai,…, 7 = sunnuntai) 1
a Olen / pm merkki PM
H Tunti päivässä (0-23) 0
k Tunti päivässä (1-24) 24
K Tunti am / pm (0-11) 0
h Tunti am / pm (1-12) 12
m Minuutti tunnissa 30
s Toinen minuutti 55
S Millisekuntia 978
z Aikavyöhyke Tyynenmeren normaaliaika; PST; GMT-08: 00
Z Aikavyöhyke -0800
X Aikavyöhyke -08 tai -0800 tai -08: 00

Älä huoli, sinun ei tarvitse muistaa kaikkia näitä, ne voidaan lähettää milloin tahansa, kun sinun on alustettava tietty päivämäärä.

Kuinka käyttää SimpleDateFormatia?

Java tarjoaa luokan nimeltä SimpleDateFormat, jonka avulla voit muotoilla ja jäsentää päivämääriä tarpeidesi mukaan.

Voit käyttää yllä olevia merkkejä muodon määrittämiseen - Esimerkiksi:

1) Vaadittu päivämäärämuoto: 2012.10.23 20:20:45 PST

Määritetty sopiva päivämäärämuoto on - vvvv. MM.dd HH: mm: ss zzz

2) Vaadittu päivämäärämuoto: 09.30.00 - 23. toukokuuta 2012

Määritetty sopiva päivämäärämuoto on: hh: mm: ss dd-MMM-yyyy

Vinkki: Ole varovainen kirjainten isojen kirjainten suhteen. Jos erehdät M: n m: n kanssa, saat ei-toivottuja tuloksia!

Opitaan tämä koodiesimerkillä.

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}}

Tuotos:

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

Vertaa päivämääriä -esimerkki

Hyödyllisin tapa verrata päivämääriä on menetelmä - vertailla ()

Katsotaanpa alla oleva koodinpätkä-

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 !!");}}}
Tuotos:
Date1 : 20-08-1981Date2 : 12-10-2012Date 1 occurs before Date 2