[Java] Enum-Vergleich und Sommermonate

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Lucky009, 25. Juni 2009 .

Schlagworte:
  1. 25. Juni 2009
    Enum-Vergleich und Sommermonate

    grüße an die gemeinde,

    ich muss mich gerade mit der enum-klasse beschäftigen. aufgabenstellung wäre:
    Den zweiten Aufgabenteil habe ich so gelöst:
    Code:
    enum Month
     {
     January(false), February(false), March(false), April(false), May(false), June(true),
     July(true), August(true), September(false), October(false), November(false), December(false);
     
     Month(boolean i)
     {
     summer = i;
     }
     
     private boolean summer;
     
     boolean isSummer()
     {
     return summer;
     }
    
     }
    
    Für den 1. Aufgabenteil fehlt mir irgendwie gerade die kreativität. Ist das nicht fast das gleich wie beim 2. teil?


    mfg lucky
     
  2. 25. Juni 2009
    AW: Enum-Vergleich und Sommermonate

    so wie ich das sehe hast du den zweiten aufgabenteil gelöst aber nicht den ersten, denn ich erkenne keinen vergleich nur ein Auslesen von true/false
     
  3. 25. Juni 2009
    AW: Enum-Vergleich und Sommermonate

    @schoudebläs: ja hast recht. bin heute etwas überarbeitet.

    ideen für den ersten aufgabenteil? 2 enum-klassen erstellen mit sommer- und den restmonaten und diese irgendwie vergleichen?
     
  4. 26. Juni 2009
    AW: Enum-Vergleich und Sommermonate

    ja du kannst ja die enums auch ohne zusätzlich (true/false) angeben und dann einfach zB

    Code:
    if(aktuellermonat.equals(sommermonat1) || aktuellermonat.equals(sommermonat2) {
     return true;
    } else {return false;}
    so iwie in der art
     
  5. 28. Juni 2009
    AW: Enum-Vergleich und Sommermonate

    Hi,

    ich bin zwar C# Entwicker und kenn mich nicht so gut mit Java aus. Also vielleicht funktioniert das hier evtl garnicht.

    Ich würde es so machen

    Code:
    
    Enum Month
    {
     Januar = 0,
     Februar = 0,
     ...
     Juni = 1,
     Juli = 1,
     August = 1,
    
     September = 0,
     ...
    
     boolean IsSummer(Month enmVariable) 
     {
     return ((int)enmVariable) == 1;
     }
    }
    
    Ich hoffe du weist was ich damit meine. Auch wenn die Syntax evtl nicht Java-konform ist ;-)

    Enum mit allen Monaten erstellen und nur den Sommermonaten den Wert 1 geben. Dann kannst du in der Methode IsSummer überprüfen ob der übergebene Enum-value 1 entspricht oder nicht. Damit hättest du auch Variante 2 abgedeckt (soweit ich die Aufgabenstellung verstehe).

    Hoffe ich konnte dir weiterhelfen!

    mfg
    Q3mantis
     
  6. 29. Juni 2009
    AW: Enum-Vergleich und Sommermonate

    ich weiss echt nicht was das sein soll... Hier hat du ein gutes beispiel, das nur ergänzt werden muss... Enum Types (The Java™ Tutorials
    Learning the Java Language Classes and Objects)
     
  7. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.