Das letzte Datum vom letzten Monat ausgeben

J

JeAr

Hallo Zusammen

ich will gerne ein relativ einfaches Java programm schreiben.
welches das aktuelle datum ausliest und danach einen monat zurückgeht und dessen letztes datum auswählt
sprich für das heutige datum vom 13.08.11 sollte mir das programm dann 31.07.2011 liefern

weil dies jedoch mein erstes programm ist habe ich keine ahnung wie ich das anstellen soll :S

könnt ihr mir da vielleicht helfen Smile


Vielen dank gruss JeAr
 
Java bietet eine herrvoragende Klasse für sowas: java.util.Calendar bzw. GregorianCalendar. Calendar ist eine abstrakte Klasse und G.Calendar ist eine Implementierung die für uns passt.
Hier ein kleines Beispiel für deine Situation:

Java:
public class Main {

	public static void main(String[] args) {
		Calendar cal = GregorianCalendar.getInstance();
		if (cal.get(Calendar.MONTH) == 0) {
			cal.set(Calendar.YEAR, cal.get(Calendar.YEAR) - 1);
			cal.set(Calendar.MONTH, 11);
		} else {
			cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) - 1);
		}
		cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
		System.out.println(cal.getTime());
	}

}
 
Hallo,

reicht da nicht:
Java:
package de.tutorials;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;

public class DateOps {
	public static void main(String[] args) throws Exception{
		Calendar cal = GregorianCalendar.getInstance();
		
		//cal.setTime(new SimpleDateFormat("dd.MM.yyyy").parse("31.01.2010"));
		
		cal.add(Calendar.MONTH, -1);
		cal.set(Calendar.DAY_OF_MONTH,cal.getActualMaximum(Calendar.DAY_OF_MONTH));
		
		System.out.println(cal.getTime());
	}
}
aus?

Gruß Tom
 
Ja stimmt, ich war in dem Glauben, dass die Calendar-Klasse Addition noch nicht unterstützt, hätte ich mal genauer nachschauen sollen ;)
Dann kann man sich das überprüfen sparen...
 
Zurück