Nur Datum vergleichen

  • Antworten:4
Robbiani Renato
  • Forum-Beiträge: 609

23.12.2019, 19:47:04 via Website

Hallo zusammen

Ich habe eine Variable im Format Date. Dies möchte ich mit dem Aktuellen Datum vergleichen. Wenn ich aber den Vergleich mit == finde ich nie das richtige Datum da die Variable einen Zeitstempel hat. Wie kann ich zwei Daten vergleichen ohne den Zeitstempel zu berücksichtigen?

Kommentieren
Jokel
  • Forum-Beiträge: 1.530

23.12.2019, 19:59:41 via Website

Hallo wandle doch beide mit simpeldateformat in einen string und Vergleiche diese.

— geändert am 23.12.2019, 20:01:33

Hilfreich?
Kommentieren
Robbiani Renato
  • Forum-Beiträge: 609

23.12.2019, 22:11:04 via Website

Ciao Jokel

Mache ich auch. Nur finde ich dies etwas hässlich. Geht das in Java nicht besser?

Gruss Renato

Hilfreich?
Kommentieren
Jokel
  • Forum-Beiträge: 1.530

24.12.2019, 08:41:57 via Website

Hallo glaube nicht das du es richtig machst.
Erstens ein vergleich von Objekten mittels „==“ wird In Java nicht gehen.
Damit vergleichst du die Instanzen nicht den Inhalt. Die Instanzen sind immer verschieden somit kommt da immer false raus.

Dafür gibt es „equals()„ oder „compareTo()“
Auch möglich „before()“ , „after()„

Auch willst du ja nur das Datum vergleichen also solltest du auch ein sinnvolles simpledateformat machen.

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
boolean b = sdf.format(dein_Date_objekt).equals(sdf.format(new Date()));

— geändert am 24.12.2019, 13:48:07

Hilfreich?
Rafael K.
Kommentieren
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

24.12.2019, 13:23:53 via App

Oder beide Werte subtrahieren und die Differenz gegen ein Epsilon prüfen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Kommentieren