1. LocalDateTimekelas

Kelas LocalDateTimenggabungake kemampuan LocalDatelan LocalTimekelas: nyimpen tanggal lan wektu. Objek kasebut uga ora bisa diganti, lan cara kasebut padha karo kelas LocalDatelan LocalTime.

Njupuk tanggal lan wektu saiki

Kabeh kaya sing dikarepake ing kene: kita nggunakake now()metode kasebut. Tuladha:

Kode Output konsol
LocalDateTime time = LocalDateTime.now();
System.out.println("Now = " + time);

Now = 2019-02-22T09:49:19.275039200

Nalika ditampilake ing layar, tanggal lan wektu dipisahake dening huruf T.

Njupuk tanggal lan wektu tartamtu

Ora kaget, kabeh padha karo LocalDatelan LocalTimekelas - kita nggunakake of()metode:

... = LocalDateTime.of(year, month, day, hours, minutes, seconds);

Pisanan, ana paramèter sing nemtokake tanggal ing format sing padha ing LocalDatekelas. Banjur ana paramèter sing nemtokake wektu ing format sing padha ing LocalTimekelas. Dhaptar kabeh variasi cara of()diwenehi ing ngisor iki:

Metode
of (int year, int month, int day, int hour, int minute)
of (int year, int month, int day, int hour, int minute, int second)
of (int year, int month, int day, int hour, int minute, int second, int nano)
of (int year, Month month, int day, int hour, int minute)
of (int year, Month month, int day, int hour, int minute, int second)
of (int year, Month month, int day, int hour, int minute, int second, int nano)
of (LocalDate date, LocalTime time)

Sampeyan bisa nyetel tanggal langsung utawa nyetel ora langsung liwat LocalDatelan LocalTimeobyek:

Kode
LocalDate date = LocalDate.now();
LocalTime time = LocalTime.now();
LocalDateTime current = LocalDateTime.of(date, time);
System.out.println("Now = " + current);

LocalDateTime date = LocalDateTime.of(2019, Month.MAY, 15, 12, 15, 00);
System.out.println("Now = " + date);
Output konsol
Now = 2019-02-22T10:05:38.465675100
Now = 2019-05-15T12:15

Kelas kasebut LocalDateTimenduweni cara kanggo njupuk unsur tanggal lan/utawa wektu. Dheweke persis nggambarake metode lan LocalDatekelas LocalTime. Kita ora bakal mbaleni maneh ing kene.



2. Instantkelas

Pangripta Jawa uga ora kesupen marang cara-cara jaman biyen.

API Wektu Tanggal kalebu kelas Instan kanggo nggarap wektu sing dituju kanggo proses sing kedadeyan ing komputer. Tinimbang jam, menit, lan detik, iku gegayutan karo detik, milidetik, lan nanodetik.

Kelas iki nduweni rong lapangan sing makili:

  • jumlah detik sing wis liwati wiwit 1 Januari 1970
  • sawetara nanodetik

Apa kelas digawe kanggo pangembang? ya wis. Pramila ngitung wektu ing Unix-time, sing diwiwiti ing wiwitan taun 1970.

Siji malah bisa ngomong sing Instantkelas iku versi simplified saka Datekelas, nahan mung apa programer perlu.

Sampeyan bisa entuk Instantobyek kanthi cara sing padha karo LocalTimeobyek:

Instant timestamp = Instant.now();

Where timestamppunika Instantvariabel, lan telpon kanggo cara statis saka kelas.Instant.now()now()Instant

Tuladha:

Kode Output konsol
Instant timestamp = Instant.now();
System.out.println(timestamp);

2019-02-22T08:42:42.234945300Z

Sampeyan uga bisa nggawe obyek anyar kanthi nggunakake variasi metode of()kanthi nglewati wektu wiwit 1 Januari 1970:

ofEpochMilli(long milliseconds)
Sampeyan kudu ngliwati nomer milidetik
ofEpochSecond(long seconds)
Sampeyan kudu ngliwati nomer detik
ofEpochSecond(long seconds, long nanos)
Sampeyan kudu ngliwati detik lan nanodetik

Cara sing kasedhiya ing Instantobyek

Kelas Instan duwe rong cara sing ngasilake nilai lapangan:

long getEpochSecond()
Cacahe detik sing wis lumaku wiwit 1 Januari 1970
int getNano()
Nanodetik.
long toEpochMilli()
Jumlah milidetik sing wis liwati wiwit 1 Januari 1970

Ana uga cara kanggo nggawe Instantobyek anyar adhedhasar sing wis ana:

Instant plusSeconds(long)
Nambah detik menyang wektu saiki
Instant plusMillis(long)
Nambah milidetik
Instant plusNanos(long)
Nambahake nanodetik
Instant minusSeconds(long)
Ngurangi detik
Instant minusMillis(long)
Ngurangi milidetik
Instant minusNanos(long)
Ngurangi nanodetik

Tuladha:

Kode Output konsol
Instant timestamp = Instant.now();
System.out.println(timestamp);

long n = timestamp.toEpochMilli();
Instant time = Instant.ofEpochMilli(n);
System.out.println(time);

2019-02-22T09:01:20.535344Z



2019-02-22T09:01:20.535Z