GregorianCalendar:GET Problem

pl4gu33

Top Contributor
Hey

ich habe folgendes Code- Beispiel:

Java:
	public static void main(String[] args){
		GregorianCalendar calender=new GregorianCalendar();
		calender.clear();
		calender.setLenient(false);
		System.out.println(calender.isSet(calender.YEAR));
		calender.set(calender.MONTH, calender.JANUARY);
		System.out.println(calender.isSet(calender.YEAR));
		System.out.println(calender.get(calender.MONTH));
		System.out.println(calender.isSet(calender.YEAR));		
	}

ich will hier nur bestimmte Werte im Kalender setzen, auf die ich später reagieren will. Nun ist es so, dass beim GET ein Trigger ausgelöst wird, der mir alle Werte setzt und die werden dann bei isSet(...) als "true" erkannt ....


Calendar (Java 2 Platform SE 5.0)

hier steht das mit dem Trigger aber ich finde leider nicht, wie ich das ausschalten kann bzw. ob das überhaupt geht ... könnt ihr mir da weiterhelfen ?
 
die Methode ist so programmiert:
Java:
    public int get(int field)
    {
        complete();
	return internalGet(field);
    }

    /**
     * Returns the value of the given calendar field. This method does
     * not involve normalization or validation of the field value.
     *
     * @param field the given calendar field.
     * @return the value for the given calendar field.
     * @see #get(int)
     */
    protected final int internalGet(int field)
    {
        return fields[field];
    }

internalGet() ist protected, da brauchst du wohl ne Subklasse, dann könntest du vorerst complete() verhindern,

aber was ist das Ziel letztendlich?
auf diese Weise teils gegen die Regeln der sowieso schon fragilen Klasse Calendar zu arbeiten, ist nicht empfehlenswert,
wenn du was kompliziertes brauchst, dann vielleicht in eigener Klasse komplett selber kontrollieren, welche Felder gesetzt sind usw.
 
das Ziel ist es ein Calendar Objekt zu haben, in dem verschiedene Kombinationen aus Tag, Jahr, Monat existieren können.

Dann wollt ich mit isSet(..) prüfen, was gesetzt wurde und dann den Query String für eine DB Anfrage daraus bauen.

Ich dachte, wenn JAVA mir so einen Calendar bietet, warum nicht auch nutzen 😀
Die Funktion is bloß sehr hinderlich und werde wohl eine eigene Klasse dafür schreiben müssen oder ich speicher mir vor dem ersten Get, ob MONTH, YEAR oder DAY true war, aber mmm das is auch net das Gelbe vom Ei 😀
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben