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

Membuat Laporan Menggunakan IReport 5.5.0 dengan D... Pada tutorial sebelumnya tentang: Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 1 Tutorial Java Swing Implementasi MVC 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...
Cara Install IReport Plugin untuk Netbeans Saat kita membangun sebuah sistem berupa aplikasi desktop menggunakan Java tentu membuat report atau laporan adalah hal yang wajib. Membuat laporan pa...
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...
Membuat Class DBConnection pada Java menggunakan N... Pada tutorial ini menjelaskan tentang cara membuat class  DBConnection pada java menggunakan netbeans untuk melakukan koneksi ke database MySQL maupun...
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 ...
Java 8: Penggunaan Date Time dan Calender pada Jav... Pada tuturial kali ini, menjelaskan penggunaan Date Time pada Java yang menggunakan API java.until.Date dan java.until.Calender. Sebagai seorang progr...
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...
Manipulasi File pada Java Untuk melakukan manipulasi File pada Java menggunakan class java.io.File mulai dari membuat file, menghapus file, cek permision sebuah file, cek meta ...
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...

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 *

7 + 1 =

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