Java Datum i vrijeme
Prvo shvatimo parametre koji se sastoje od a Datum.
Prvenstveno će sadržavati –
- The godina (u 2 ili 4 znamenke)
- The mjesec (u 2 znamenke, prva 3 slova mjeseca ili cijelu riječ mjeseca).
- The podaci (to će biti stvarni datum u mjesecu).
- The dan (dan zadanog datuma – poput ned, pon, uto itd.)
Što se tiče računalnih sustava, postoji dosta parametara koji se mogu koristiti za povezivanje s datumom. Vidjet ćemo ih u kasnijim dijelovima ove teme.
Prikaz datuma u Java
Sada da vidimo kako Java dostavite nam datum. Prvo ćemo vidjeti kako dobiti trenutni datum-
Java pruža klasu Datum pod paketom java.util. Paket pruža nekoliko metoda za igranje s datumom.
Objekt Date možete koristiti pozivanjem konstruktora klase Date na sljedeći način:
import java.util.Date;
class Date_Ex1 {
public static void main(String args[]) {
// Instantiate a Date object by invoking its constructor
Date objDate = new Date();
// Display the Date & Time using toString()
System.out.println(objDate.toString());
}
}
Izlaz:
Wed Nov 29 06:36:22 UTC 2017
U gornjem primjeru datuma prikazanog u zadanom formatu, ako želimo prikazati datum i vrijeme u drugom formatu, prvo shvatite formatiranje datuma.
SimpleDateFormat: Raščlanite i formatirajte datume
Mora da ste svi naučili abecedu u svom vrtiću...
Naučimo sada abecedu formata datuma.
| Pismo | Komponenta datuma ili vremena | Primjeri |
|---|---|---|
| G | Označivač ere | AD |
| y | Godina | 2018 |
| M | Mjesec u godini | srpnja ili srpnja ili 07 |
| w | Tjedan u godini | 27 |
| W | Tjedan u mjesecu | 2 |
| D | Dan u godini | 189 |
| d | Dan u mjesecu | 10 |
| F | Dan u tjednu u mjesecu | 2 |
| E | Naziv dana u tjednu | Utorak ili utorak |
| u | Broj dana u tjednu (1 = Monday, …, 7 = nedjelja) | 1 |
| a | Am/pm marker | PM |
| H | Sat u danu (0-23) | 0 |
| k | Sat u danu (1-24) | 24 |
| K | Sat u prijepodne/popodne (0-11) | 0 |
| h | Sat u prijepodne/popodne (1-12) | 12 |
| m | Minuta u satu | 30 |
| s | Drugi u minuti | 55 |
| S | milisekundu | 978 |
| z | Vremenska zona | pacifičko standardno vrijeme; PST; GMT-08:00 |
| Z | Vremenska zona | -0800 |
| X | Vremenska zona | -08 ili -0800 ili -08:00 |
Ne brinite, ne morate sve to zapamtiti, možete ih uputiti kad god trebate formatirati određeni datum.
Kako koristiti SimpleDateFormat?
Java pruža klasu koja se zove SimpleDateFormat koja vam omogućuje formatiranje i raščlanjivanje datuma u prema vašim zahtjevima.
Možete koristiti gornje znakove da odredite format-
Na primjer:
1) Potreban format datuma: 2012.10.23. listopada 20. u 20:45:XNUMX PST
Naveden odgovarajući format datuma bit će- gggg.MM.dd HH:mm:ss zzz
2) Potreban format datuma:09:30:00 AM 23-May-2012
Naveden odgovarajući format datuma bit će-hh:mm:ss a dd-MMM-gggg
Savjet: Budite oprezni s velikim slovima. Ako zamijenite M s m, dobit ćete neželjene rezultate!
Naučimo to na primjeru koda.
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 objDate
System.out.println(objDate);
String strDateFormat = "hh:mm:ss a dd-MMM-yyyy"; //Date format is Specified
SimpleDateFormat objSDF = new SimpleDateFormat(strDateFormat); //Date format string is passed as an argument to the Date format object
System.out.println(objSDF.format(objDate)); //Date formatting is applied to the current date
}
}
Izlaz:
Wed Nov 29 06:31:41 UTC 2017 06:31:41 AM 29-Nov-2017
Primjer usporedbe datuma
Najkorisnija metoda usporedbe datuma je korištenje metode – compareTo()
Pogledajmo donji isječak koda-
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 !!");
}
}
}
Izlaz:
Date1 : 20-08-1981 Date2 : 12-10-2012 Date 1 occurs before Date 2


