Selamat datang di UNYDeveloperNetwork. Salah satu kebutuhan terpenting dalam suatu bahasa pemrograman adalah mendapatkan current time & date. Pada artikel tutorial kali ini, Saya akan memberikan tutorial berbagai cara untuk mendapatkan current time & date dalam bahasa pemrograman Java.
Setidaknya ada empat cara dalam memperoleh current time & date dalam bahasa pemrograman Java. Apa sajakah itu?
java.util.Date
Pertama kali kita menggunakan java.util.Date. Ini adalah cara umum yang paling banyak digunakan untuk memperoleh current time & date dalam bahasa pemrograman Java. Untuk menggunakannya kita harus mengimport terlebih dahulu java.util.Date. Selengkapnya adalah seperti kodingan di bawah ini.
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
public class ByUtilDate {
public static void main(String[] args) {
DateFormat formatTanggal = new SimpleDateFormat("HH:mm:ss dd/MM/yyyy");
Date tanggal = new Date();
System.out.println(formatTanggal.format(tanggal));
}
}
Pada contoh di atas, selain Saya menggunakan java.util.Date, Saya juga menggunakan java.text.DateFormat dan java.text.SimpleDateFormat. Kedua library ini berfungsi untuk memformat time & date yang sudah diperoleh dari java.util.Date supaya dapat lebih terbaca. Apabila kodingan di atas dijalankan, maka outputnya adalah seperti tangkapan layar di bawah ini.
Dapat kita lihat, keluaran dari kodingan di atas sudah cukup enak untuk dibaca. Namun, kita dapat membuatnya lebih enak lagi dengan memberikannya sedikit modifikasi. Perhatikan baris kode berikut ini.
DateFormat formatTanggal = new SimpleDateFormat("HH:mm:ss dd/MM/yyyy");
Kita melihat pada formatnya adalah: “HH:mm:ss dd/MM/yyyy”. Dengan detailnya adalah sebagai berikut: H: Hour (jam); m: minute (menit); s: second (detik); d: date (tanggal); M: month (bulan); dan y: year (tahun). Kita modifikasi format tersebut menjadi seperti baris kode sebagai berikut.
DateFormat formatTanggal = new SimpleDateFormat("HH:mm:ss dd/MMMM/yyyy");
Setelah kita jalankan, maka keluaran dari format tersebut adalah sebagai berikut.
Yep, terdapat perbedaan pada keluaran. Kali ini keluaran lebih enak dibaca lagi karena menampilkan nama bulan secara lengkap. Masih sama dengan menggunakan java.text.SimpleDateFormat sekarang kita akan melanjutkan ke cara yang kedua.
java.util.Calendar
Cara kedua adalah menggunakan java.util.Calendar. Tidak ada perbedaan yang terlalu mencolok antara kita menggunakan java.util.Date dengan java.util.Calendar. Karena formatternya masih sama, yakni menggunakan java.text.SimpleDateFormat. Bagaimana cara mendapatkan current time & date dengan java.util.Calendar? Mari kita perhatikan kodingan berikut ini.
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class ByUtilCalendar {
public static void main(String[] args) {
DateFormat formatTanggal = new SimpleDateFormat("HH:mm:ss dd/MM/yyyy");
Calendar kalender = Calendar.getInstance();
System.out.println(formatTanggal.format(kalender.getTime()));
}
}
Dengan menggunakan format kode yang hampir sama dengan java.util.date. Kita hanya perlu mengganti resource untuk mendapatkan current time & date dari java.util.Date ke java.util.Calendar. Selain itu, sama persis. Tidak banyak perubahan yang harus dilakukan. Perubahan kecil lain yang dilakukan adalah pada proses menampilkan time & date yang sudah diperoleh, yakni dengan memanggil method getTime(). Hasil run dari kodingan ini adalah seperti tangkapan layar di bawah ini.
Anda juga dapat memodifikasi pemformatan tanggal dan waktu yang diperoleh pada variable formatTanggal sesuai dengan selera Anda. Sekarang kita akan beralih ke cara yang lain yang “agak berbeda” daripada dua cara sebelumnya namun, sebenarnya hampir sama.
java.time.LocalDateTime
Cara ketiga adalah menggunakan java.time.LocalDateTime. Perbedaan dari dua cara sebelumnya, pada cara yang ketiga ini untuk formatter-nya kita menggunakan java.time.format.DateTimeFormatter. Pemformatan date & time dengan cara ini lebih simple karena tidak memerlukan banyak import. Sehingga baris kode menjadi lebih sedikit. Berikut adalah contoh kodingannya.
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class ByTimeLocalDateTime {
public static void main(String[] args) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss dd/MM/yyyy");
LocalDateTime getNow = LocalDateTime.now();
System.out.println(dateTimeFormatter.format(getNow));
}
}
Dapat kita lihat, kita hanya perlu mengimport dua class untuk dapat menampilkan current date & time daripada dua cara sebelumnya yang memerlukan tiga import. Setelah kita run, maka hasilnya adalah seperti tangkapan layar di bawah ini.
Apabila pemformatan tanggal dan waktunya sama, keluarannya pun pasti juga akan sama. Sekarang kita akan beralih ke cara berikutnya untuk mendapatkan current Time & Date. Namun cara terakhir ini hanya dapat digunakan untuk memperoleh date saja.
java.time.LocalDate
Cara ini hanya dapat memperoleh current Date saja. Untuk dapat menggunakannya, Anda perlu mengimport java.time.LocalDate. Untuk formatternya Anda masih dapat menggunakan java.time.format.DateTimeFormatter. Untuk kodingannya adalah sebagai berikut.
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class ByLocalDate {
public static void main(String[] args) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate localDate = LocalDate.now();
System.out.println(dateTimeFormatter.format(localDate));
}
}
Sekali lagi, cara ini hanya dapat digunakan untuk mendapatkan current Date. Maka setelah di run, hasilnya adalah seperti tangkapan layar di bawah ini.
Bagaimana jika kita hanya ingin mendapatkan current time nya saja? mudah saja kita gunakan java.time.LocalTime.
java.time.LocalTime
Cara terakhir ini dapat digunakan jika Anda hanya ingin mendapatkan current time nya saja. Untuk menggunakannya, Anda hanya perlu mengimport java.time.LocalTime. Untuk kodingannya adalah sebagai berikut.
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public class byLocalTime {
public static void main(String[] args) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalTime localTime = LocalTime.now();
System.out.println(dateTimeFormatter.format(localTime));
}
}
Hampir sama dengan cara sebelumnya, cara ini digunakan hanya untuk mendapatkan current time saja. Setelah kita run, maka hasilnya juga hanya akan menampilkan current time saja.
Baiklah, dari berbagai cara yang sudah Saya sampaikan, manakah yang Anda akan gunakan? Silakan, Anda dapat menggunakan yang mana Saja. Atau Anda masih bingung? jika masih bingung, Anda dapat meninggalkan pertanyaan pada kolom komentar. Jika Anda ingin mencuplik artikel ini, jangan lupa juga sertakan URL nya. Terima kasih… ^_^
UNDUH PROJECT