Bandingkan tanggal di Jawa

Pengarang: Roger Morrison
Tanggal Pembuatan: 24 September 2021
Tanggal Pembaruan: 1 Juli 2024
Anonim
Mana Lebih Mengerikan.? Perbandingan Dahsyatnya Letusan Gunung Krakatau 1883 Vs Semeru Lumajang 2021
Video: Mana Lebih Mengerikan.? Perbandingan Dahsyatnya Letusan Gunung Krakatau 1883 Vs Semeru Lumajang 2021

Isi

Ada beberapa cara untuk membandingkan tanggal di Jawa. Secara internal, tanggal direpresentasikan sebagai titik waktu (panjang) - jumlah milidetik yang telah berlalu sejak 1 Januari 1970. Di Jawa, tanggal adalah objek Tanggal, yang berarti berisi beberapa metode untuk membandingkan tanggal. Metode apa pun untuk membandingkan dua tanggal pada dasarnya akan membandingkan waktu yang telah berlalu dari kedua tanggal tersebut.

Melangkah

Metode 1 dari 4: Menggunakan perintah "bandingkanTo"

  1. Gunakan bandingkanTo. Date mengimplementasikan ComparableDate> sehingga dua tanggal bisa langsung dibandingkan satu sama lain menggunakan metode bandingkanTo. Jika tanggal menunjukkan momen yang sama dalam waktu, metode tersebut akan mengembalikan nol. Jika tanggal yang dibandingkan sebelum argumen tanggal, maka nilai negatif akan dikembalikan. Jika tanggal yang dibandingkan adalah tanggal yang lebih lambat dari tanggal pada argumen tanggal, maka nilai positif akan dikembalikan. Jika tanggalnya sama, nol akan dikembalikan.
  2. Buat objek Tanggal. Anda harus membuat setiap objek tanggal sebelum Anda dapat mulai membandingkannya. Salah satu cara untuk melakukannya adalah dengan menerapkan kelas SimpleDateFormat. Ini memungkinkan Anda untuk dengan mudah memasukkan tanggal ke dalam objek Tanggal.

      SimpleDateFormat sdf = SimpleDateFormat baru ("yyyy-MM-dd"); // Untuk mendeklarasikan nilai dalam objek tanggal baru.Gunakan format tanggal yang sama saat membuat tanggal Date date1 = sdf.parse ("1995-02-23"); // date1 adalah 23 Februari 1995 Date date2 = sdf.parse ("2001-10-31"); // date2 adalah 31 Oktober 2001 Date date3 = sdf.parse ("1995-02-23"); // date3 adalah 23 Februari 1995

  3. Bandingkan objek tanggal. Di bawah ini menunjukkan setiap kasus - kurang dari, sama dengan dan lebih besar dari.

      date1.compareTo (date2); // date1 date2, kurang dari 0 date2.compareTo (date1); // date2> date1, mengembalikan lebih besar dari 0 date1.compareTo (date3); // date1 = date3, mengembalikan 0

Metode 2 dari 4: Menggunakan metode "sama dengan, setelah dan sebelum"

  1. Gunakan sama, setelah dan sebelum. Tanggal dapat dibandingkan satu sama lain menggunakan metode sama dengan, setelah, dan sebelum. Jika dua tanggal menunjukkan waktu yang sama, metode sama dengan akan mengembalikan "benar". Contoh menggunakan tanggal yang dibuat sebelumnya melalui metode bandingkanTo.
  2. Bandingkan menggunakan metode sebelumnya. Kode di bawah ini menunjukkan kasus benar dan salah. Jika tanggal1 lebih awal dari tanggal2, hasilnya benar. Jika tidak, before mengembalikan false.

      System.out.print (date1.before (date2)); // cetak System.out.print yang benar (date2.before (date2)); // print false

  3. Bandingkan ini dengan metode setelahnya. Kode di bawah ini menunjukkan kasus benar dan salah. Jika tanggal2 lebih lama dari tanggal1, maka setelah mengembalikan true. Jika tidak, after return false.

      System.out.print (date2.after (date1)); // print true System.out.print (date1.after (date2)); // print false

  4. Bandingkan menggunakan metode sama dengan. Kode di bawah ini menunjukkan kasus benar dan salah. Jika tanggalnya sama, sama dengan nilai true. Jika tidak, sama dengan mengembalikan salah.

      System.out.print (date1.equals (date3)); // cetak benar System.out.print (date1.equals (tanggal2)); // cetak salah

Metode 3 dari 4: Menggunakan kelas Kalender

  1. Gunakan kelas Kalender. Kelas Kalender juga memiliki metode bandingkanTo, sama dengan, setelah, dan sebelum, yang bekerja dengan cara yang sama seperti yang dijelaskan di atas untuk kelas tanggal. Jadi jika data tanggal disimpan dalam kalender, tidak perlu mengekstrak "tanggal", hanya untuk membandingkan dua tanggal.
  2. Buat contoh Kalender. Untuk menggunakan metode Kalender, Anda memerlukan beberapa contoh Kalender. Untungnya, Anda dapat menggunakan waktu yang dihasilkan oleh instance Date.

      Kalender cal1 = Calendar.getInstance (); // mendeklarasikan cal1 Calendar cal2 = Calendar.getInstance (); // mendeklarasikan cal2 Calendar cal3 = Calendar.getInstance (); // mendeklarasikan cal3 cal1.setTime (date1); // terapkan tanggal ke cal1 cal2.setTime (date2); cal3.setTime (date3);

  3. Bandingkan cal1 dan cal2 menggunakan sebelumnya. Kode di bawah ini mengembalikan nilai true karena cal1 lebih awal dari cal2.

      System.out.print (cal1.before (cal2)); // cetak benar

  4. Bandingkan cal1 dan cal2 menggunakan after. Kode di bawah ini mengembalikan nilai salah, karena cal1 lebih awal dari cal2.

      System.out.print (cal1.after (cal2)); // print false

  5. Bandingkan cal1 dan cal2 menggunakan persamaan. Kode di bawah ini menunjukkan contoh benar dan salah. Kondisinya bergantung pada contoh Kalender yang dibandingkan. Kode di bawah mengembalikan "benar" dan kemudian "salah" di baris berikutnya.

      System.out.println (cal1.equals (cal3)); // cetak benar: cal1 == cal3 System.out.print (cal1.equals (cal2)); // print false: cal1! = cal2

Metode 4 dari 4: Menggunakan metode "getTime"

  1. Gunakan getTime. Dimungkinkan juga untuk membandingkan secara langsung dua titik waktu, meskipun salah satu pendekatan di atas cenderung menghasilkan hasil yang lebih mudah dibaca dan dengan demikian lebih disukai. Ini adalah perbandingan dua tipe data primitif, jadi bisa dilakukan dengan "", ">" dan "==".
  2. Buat objek waktu "lama". Sebelum Anda dapat membandingkan tanggal, Anda harus membuat bilangan bulat panjang dari data objek Tanggal yang dibuat sebelumnya. Untungnya, metode getTime () akan melakukan sebagian besar pekerjaan untuk Anda.

      lama time1 = getTime (date1); // mendeklarasikan waktu primitif dari tanggal1 lama waktu2 = getTime (tanggal2); // menyatakan waktu2 primitif dari tanggal2

  3. Gunakan persamaan "kurang dari". Gunakan simbol "kurang dari" () untuk membandingkan dua nilai bilangan bulat ini. Karena time1 kurang dari time2, pesan pertama harus dicetak di layar. Pernyataan else disertakan untuk sintaks yang benar.

      if (time1 time2) {System.out.println ("date1 lebih awal dari date2"); // cetak karena time1 time2} lain {System.out.println ("tanggal1 lebih baru dari atau sama dengan tanggal2"); }

  4. Lakukan perbandingan "lebih besar dari". Gunakan simbol "lebih besar dari" (>) untuk membandingkan dua bilangan bulat ini. Karena time1 lebih besar dari time2, pesan pertama dicetak di layar. Pernyataan else disertakan untuk sintaks yang benar.

      if (time2> time1) {System.out.println ("date2 datang setelah date1"); // print karena time2> time1} else {System.out.println ("tanggal2 lebih awal dari atau sama dengan tanggal1"); }

  5. Lakukan perbandingan "sama dengan". Gunakan simbol (==) untuk membandingkan dua bilangan bulat ini. Karena time1 sama dengan time3, pesan pertama harus dicetak. Jika program mendapatkan pernyataan else, itu berarti waktunya tidak sama.

      if (time1 == time2) {System.out.println ("Tanggalnya sama"); } else {System.out.println ("Tanggal tidak sama"); // cetak karena time1! = time2}