Gregorian Calendar

SMoeller

Mitglied
Hallo,
ich will mit einer set Methode das Geburtsdatum speichern. Allerdings gelingt mir das nicht so wirklich.
Hier ist mal mein Code:
Code:
private GregorianCalendar gebDatum = new GregorianCalendar(); 

public void setGebDatum(GregorianCalendar GC)
{
	gebDatum = GC;
}

In der anderen Klasse steht dann:
Code:
k1.setGebDatum()
Mein Problem ist nun, dass ich nicht weiß, was ich als Parameter übergeben muss, damit das Geburstadum so gespeichert wird: tt mm jj.
 
Du schreibst was von tt.mm.jj. Die würde es also reichen das Datum als einen solchen String zu "speichern"?

Generell sollte es reichen das Datum als Date zu übergeben. Der GregorianCalendar ist im Grunde nur dazu da bestimmte Informationen wie den Wochentag des Datums abzurufen.

Ein Datum kann man weiterhin nur als String in einer bestimmten Reprästentation (wie tt.mm.jj) ablegen, es gibt aber z.B. die möglichkeit beim Abrufen des Geburtsdatums dieses entsprechend formatieren zu lassen.
 
ich weiß, dass man das auch gut und gerne als String speichern kann, aber sag das mal meinem Lehrer, der will unbedingt, dass wir den GregorianCalendar nehemen und zwar mit get und set Methoden.
 
In dem Fall kannst du das Geburtsdatum dann aber nicht in nem bestimmten Format wie tt.mm.jj speichern. Nur ausgeben kannst du es so als formatierten String.

Java:
public static String getDateAsString(Date date) {
		SimpleDateFormat format = new SimpleDateFormat("dd.MM.yy");
		return format.format(date);
}


Und lass bitte das
Java:
private GregorianCalendar gebDatum = new GregorianCalendar();

weg.

Ein
Java:
private GregorianCalendar gebDatum;
ist ausreichend wenn du den Calendar nicht vor dem Aufruf des setters schon benutzen möchtest. Ansonsten verschwendest du mit dem new nur noch nen Stückchen speicher, da das Objekt im Setter eh überschrieben wird.
 
Zurück