Announcement

Collapse
No announcement yet.

Frage zur Datumsbestimmung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Frage zur Datumsbestimmung

    Habe mir zunächst ein x-beliebiges Datum ausgeben lassen:
    zB. den 22.5.1999

    Um zu sehen, ob Java automatisch erkennt, daß der Mai (in diesem Beispiel) 31 Tage hat, habe ich nicht: Calender.DATE 22, sondern Calender.DATE 32 angegeben. Das müßte bedeuten, daß ich den 1.6.1999 ausgegeben bekomme, weil der Mai ja nur 31 hat. Folglich 1 zuviel und dann automatisch in den nächsten Monat.

    Ausgegeben wird aber: 2.6.1999

    Warum?

    Wer weiß Bescheid und kann mir helfen?

  • #2
    Hallo "smiebi",

    du hast, so wie ich das sehe den Mai mit set(MONTH,5) gesetzt, das ist aber falsch, richtig wäre es mit set(MONTH,MAY). 5 ist der Juni.

    Hoffe geholfen zu haben

    Hans-Christop

    Comment


    • #3
      hm,

      heißt also, das die Monatskonstanten, wie May, Juni, Juli, usw. automatisch ihre jeweilige Anzahl an Tagen haben. Ich also bei der Monatsbestimmung mich nicht großartig mit Zahlen und Rechnerei aufhalten muß - sondern, wenn ich zB Mai eingebe automatisch von 31 Tagen ausgehen kann.

      Dann müßte das ja bedeuten, daß wenn ich für Monat May und für das Datum den 32 eingebe, ich dann auch den 1.6 bekomme. Oder?! Habe ich da schon wieder was übersehen?

      Danke, schonmal für die Hilfe! = )

      Smieb

      Comment


      • #4
        Hallo smiebi,

        also der 32.5. ist dann der 1.6., so wars in meinem Test-Programm.
        Achtung bei Monaten mit <31 Tagen da funktioniert der 32 nicht mehr, besser wäre den Tag auf den Ersten zu setzen (set(DATE,1)) und dann einen Tag zurück (roll(DATE,-1)), und dann hat man den letzten Tag des Monats.

        Wenn diese Funktion (MaxTageVonMonat) schnell sein muss, würde ich doch besser einen Array ([31,28,31,30,31...])benutzen und für den Februar eine extra Behandlung vorschlagen.

        Hoffe geholfen zu haben,

        Hans-Christop

        Comment

        Working...
        X