Java Datum och tid

Lรฅt oss fรถrst fรถrstรฅ parametrarna som bestรฅr av en Datum.

Hur man anvรคnder Date in Java

Den kommer i fรถrsta hand att innehรฅlla โ€“

  • Ocuco-landskapet รฅr (med antingen 2 eller 4 siffror)
  • Ocuco-landskapet mรฅnad (med antingen 2 siffror, fรถrsta 3 bokstรคverna i mรฅnaden eller hela mรฅnadens ord).
  • Ocuco-landskapet datum (det kommer att vara det faktiska datumet i mรฅnaden).
  • Ocuco-landskapet dag (dagen vid det angivna datumet โ€“ som sรถn, mรฅn, tis, etc.)

Nรคr det gรคller datorsystem finns det ganska mรฅnga parametrar som kan anvรคndas fรถr att associera med ett datum. Vi kommer att se dem i de senare delarna av detta รคmne.

Visa datum in Java

Lรฅt oss nu se hur Java ge oss datumet. Fรถrst ska vi se hur man fรฅr det aktuella datumet-

Java tillhandahรฅller en Date-klass under paketet java.util. Paketet tillhandahรฅller flera metoder fรถr att leka med datumet.

Du kan anvรคnda Date-objektet genom att anropa konstruktorn fรถr Date-klassen enligt fรถljande:

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

Produktion:

Wed Nov 29 06:36:22 UTC 2017

I exemplet ovan visas datum i standardformat, om vi vill visa datum och tid i ett annat format, fรถrstรฅ fรถrst formateringen av datum.

SimpleDateFormat: Analysera och formatera datum

Ni mรฅste alla ha lรคrt er alfabetet pรฅ er dagis...

Lรฅt oss nu lรคra oss ABC:erna fรถr datumformatet.

Brev Datum eller Tidskomponent Exempel
G Era betecknare AD
y ร…r 2018
M Mรฅnad i รฅr juli eller juli eller 07
w Vecka i รฅr 27
W Vecka i mรฅnad 2
D Dag i รฅr 189
d Dag i mรฅnad 10
F Veckodag i mรฅnad 2
E Dagens namn i veckan tisdag eller tis
u Dagnummer i veckan (1 = Monday, โ€ฆ, 7 = sรถndag) 1
a Am/pm-markรถr PM
H Timme pรฅ dygnet (0-23) 0
k Timme pรฅ dygnet (1-24) 24
K Timme i am/pm (0-11) 0
h Timme i am/pm (1-12) 12
m Minut i timme 30
s Tvรฅa pรฅ minuten 55
S millisekund 978
z tidszon Pacific Standard Time; PST; GMT-08:00
Z tidszon -0800
X tidszon -08 eller -0800 eller -08:00

Oroa dig inte, du behรถver inte komma ihรฅg alla dessa, de kan hรคnvisas nรคr du behรถver formatera ett visst datum.

Hur anvรคnder man SimpleDateFormat?

Java tillhandahรฅller en klass som heter SimpleDateFormat som lรฅter dig formatera och analysera datum enligt dina krav.

Du kan anvรคnda tecknen ovan fรถr att ange format-

Till exempel:

1) Datumformat krรคvs: 2012.10.23 20:20:45 PST

Det lรคmpliga datumformatet som anges kommer att vara- รฅรฅรฅรฅ.MM.dd HH:mm:ss zzz

2) Datumformat krรคvs:09:30:00 AM 23-May-2012

Det lรคmpliga datumformatet som anges kommer att vara-hh:mm:ss en dd-MMM-รฅรฅรฅรฅ

Dricks: Var fรถrsiktig med versaler. Om du missar M med m, kommer du att fรฅ oรถnskade resultat!

Lรฅt oss lรคra oss detta med ett kodexempel.

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

Produktion:

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

Jรคmfรถr datum exempel

Jรคmfรถr datum exempel

Den mest anvรคndbara metoden fรถr att jรคmfรถra datum รคr att anvรคnda metoden โ€“ compareTo()

Lรฅt oss ta en titt pรฅ kodavsnittet nedan-

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 !!");
  }
 }
}

Produktion:

Date1 : 20-08-1981
Date2 : 12-10-2012
Date 1 occurs before Date 2

Sammanfatta detta inlรคgg med: