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 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...
Membuat Koneksi MySQL menggunakan JDBC Driver pada... Pada tutorial kali ini, menjelaskan tentang bagaimana membuat koneksi MySQL menggunakan JDBC Driver pada Java. Sebelum melanjutkan ke tahapan berikutn...
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...
Steganografi menggunakan Least Significant Bit (LS... Steganografi merupakan tehnik atau salah satu metode menyembunyikan pesan pada suatu media berupa gambar, audio maupun video sehingga pesan tersebut t...
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...
Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan ... Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan v1.0) merupakan aplikasi/perangkat lunak yang digunakan untuk keperluan administrasi Rumah Makan, Ba...
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...
Software Akuntansi MSID Accounting Pro Aplikasi atau Software Akuntansi MSID Accounting Pro merupakan aplikasi akuntansi dan keuangan yang digunakan untuk membuat laporan keuangan perusahaa...
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...

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 *

3 × 4 =