Java Datum i vrijeme

Prvo shvatimo parametre koji se sastoje od a Datum.

Kako koristiti Datum u Java

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

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