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

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...
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 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 Minimarket Pro v2.3 (Java Aplication) Salah satu apilasi yang kami kembangkan sendiri adalah Aplikasi minimarket v2.3. Aplikasi Minimarket Pro v2.3 merupakan aplikasi untuk toko grosir, mi...
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...
Aplikasi Manajemen Hotel (MSIDHotel V2.0) Aplikasi MSIDHotel v2.0 merupakan Aplikasi manajemen hotel atau bungalows untuk manajemen tamu hotel mulai dari proses reservasi sampai proses check o...
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 ...
Software Akuntansi MSID Accounting Pro Aplikasi atau Software Akuntansi MSID Accounting Pro merupakan aplikasi akuntansi dan keuangan yang digunakan untuk membuat laporan keuangan perusahaa...
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...
Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan ... Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan v1.0) merupakan aplikasi/perangkat lunak yang digunakan untuk keperluan administrasi Rumah Makan, Ba...

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 *

5 + sixteen =