Java 8 : Membandingkan Tanggal pada Java

Membandingkan tanggal pada java sangatlah mudah dengan catatan telah memahami tutorial sebelumnya tentang penggunaan API Date Time dan Calender. Berikut contoh-contoh cara membandingkan tanggal pada java termasuk pada java 8.

1. Date.compareTo()

Cara ini merupakan cara lama membandingkan dua buah tanggal pada java. Perintah Date.compare() akan menghasilkan nilai 0 jika kedua tanggal sama dan menghasilkan nilai lebih besar atau lebih kecil jika ada perbedaan tanggal.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class TestDate {
 
public static void main(String[] args) throws ParseException {
 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 Date date1 = sdf.parse("2009-12-31");
 Date date2 = sdf.parse("2010-01-31");
 
System.out.println("date1 : " + sdf.format(date1));
 System.out.println("date2 : " + sdf.format(date2));
 
if (date1.compareTo(date2) > 0) {
 System.out.println("Date1 is after Date2");
 } else if (date1.compareTo(date2) < 0) {
 System.out.println("Date1 is before Date2");
 } else if (date1.compareTo(date2) == 0) {
 System.out.println("Date1 is equal to Date2");
 } else {
 System.out.println("How to get here?");
 }
 
}
 
}

Output

date1 : 2009-12-31
date2 : 2010-01-31
Date1 is before Date2

2. Date.before(), Date.after() and Date.equals()

Methode yang lebih gampang digunakan dari pada methode Date.compare()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class TestDate2 {
 
public static void main(String[] args) throws ParseException {
 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 Date date1 = sdf.parse("2009-12-31");
 Date date2 = sdf.parse("2010-01-31");
 
System.out.println("date1 : " + sdf.format(date1));
 System.out.println("date2 : " + sdf.format(date2));
 
if (date1.after(date2)) {
 System.out.println("Date1 is after Date2");
 }
 
if (date1.before(date2)) {
 System.out.println("Date1 is before Date2");
 }
 
if (date1.equals(date2)) {
 System.out.println("Date1 is equal Date2");
 }
 
}
 
}

Output

date1 : 2009-12-31
date2 : 2010-01-31
Date1 is before Date2

3. Calender.before(), Calender.after() and Calender.equals()

Selain menggunakan API java.until.Date membandingkan tanggal juga dapat menggunakan Calender

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
 
public class TestDate3 {
 
public static void main(String[] args) throws ParseException {
 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 Date date1 = sdf.parse("2009-12-31");
 Date date2 = sdf.parse("2010-01-31");
 
System.out.println("date1 : " + sdf.format(date1));
 System.out.println("date2 : " + sdf.format(date2));
 
Calendar cal1 = Calendar.getInstance();
 Calendar cal2 = Calendar.getInstance();
 cal1.setTime(date1);
 cal2.setTime(date2);
 
if (cal1.after(cal2)) {
 System.out.println("Date1 is after Date2");
 }
 
if (cal1.before(cal2)) {
 System.out.println("Date1 is before Date2");
 }
 
if (cal1.equals(cal2)) {
 System.out.println("Date1 is equal Date2");
 }
 }
 
}

Output

date1 : 2009-12-31
date2 : 2010-01-31
Date1 is before Date2

 

4. Java 8

pada java8 kita bisa menggunakan isBefore(), isAfter(), isEqual() dan compareTo() untuk membandingkan tanggal.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
 
public class TestDate4 {
 
public static void main(String[] args) {
 
DateTimeFormatter sdf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
 LocalDate date1 = LocalDate.of(2009, 12, 31);
 LocalDate date2 = LocalDate.of(2010, 01, 31);
 
System.out.println("date1 : " + sdf.format(date1));
 System.out.println("date2 : " + sdf.format(date2));
 
System.out.println("Is...");
 if (date1.isAfter(date2)) {
 System.out.println("Date1 is after Date2");
 }
 
if (date1.isBefore(date2)) {
 System.out.println("Date1 is before Date2");
 }
 
if (date1.isEqual(date2)) {
 System.out.println("Date1 is equal Date2");
 }
 
System.out.println("CompareTo...");
 if (date1.compareTo(date2) > 0) {
 
System.out.println("Date1 is after Date2");
 
} else if (date1.compareTo(date2) < 0) {
 
System.out.println("Date1 is before Date2");
 
} else if (date1.compareTo(date2) == 0) {
 
System.out.println("Date1 is equal to Date2");
 
} else {
 
System.out.println("How to get here?");
 
}
 }
 
}

Output

date1 : 2009-12-31
date2 : 2010-01-31
Is...
Date1 is before Date2
CompareTo...
Date1 is before Date2

References

  1. Date CompareTo JavaDoc
  2. Calendar before after JavaDoc
  3. LocalDate JavaDoc
  4. How to Compare Date in Java

 

Share This

 

Related Post

Java : Membuat Laporan Menggunakan IReport 5.5.0 Hal yang paling vital dalam membuat sistem informasi adalah pembuatan laporan. Membuat laporan merupakan hal yang paling melelahkan apa lagi terdiri d...
Cara Install Plugin Kotlin pada Android Studio Pada tutorial kali ini akan dijelaskan tentang cara install plugin kotlin pada android studio. Kotlin merupakan bahasa pemrograman baru yang dibuat ol...
MSID Sales (Sistem Penjualan Door to Door) MSID Sales atau Mataram Software-Id sales merupakan aplikasi yang digunakan untuk mengelola sistem penjualan door to door atau sistem ngampas. FItur ...
Menampilkan Informasi Kapasitas Hardisk pada Java Untuk menampilkan informasi kapasitas hardisk pada java menggunakan class java.io.File. Pada java 1.6 keatas terdapat methodĀ getTotalSpace(), getUsabl...
Membuat Koneksi Ms. Access menggunakan UCanAccess ... Pada tutorial kali ini, akan dijelaskan bagaimana membuat koneksi Ms. Access menggunakan UCanAccess pada java. Pertama --Download UCanAccess Library d...
Menggunakan Thread pada Java c. Sebuah object dari class java.lang.Thread merupakan representasi dari sebuah thread. Baca juga Membandingkan tanggal pada java Terdapat dua l...
Software Akuntansi MSID Accounting Pro Aplikasi atau Software Akuntansi MSID Accounting Pro merupakan aplikasi akuntansi dan keuangan yang digunakan untuk membuat laporan keuangan perusahaa...
Tutorial Java Swing Implementasi MVC Dengan Databa... Pada tutorial sebelumnya tentangĀ Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 1 sudah dijelaskan 4 tahap dari 7 tahap imp...
Java membuat Validasi Form Input Pada tutorial Java Membuat Validasi Form Input kali ini kita akan mencoba membuat aplikasi sederhana untuk membatasi karakter yang boleh di masukan pa...
JavaFX Tutorial : Membuat Grafik Line Chart Membuat grafik Line Chart pada javaFX tidaklah sesulit yang dibayangkan. Berikut beberapa contoh Line Chart pada JavaFX. Baca Juga : Bagaimana meng...

2 tanggapan untuk “Java 8 : Membandingkan Tanggal pada Java

  1. Ping-balik: Java 8 : Membandingkan Tanggal pada Java – Jagungodak | Free ALL Script PHP, javascript, C++

  2. Ping-balik: Menggunakan Thread pada Java - Jagungodak

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

fifteen + 20 =

This site uses Akismet to reduce spam. Learn how your comment data is processed.