Programm Kaffeetassen (achte Version)


                 import java.io.*;

                 class Kaffeetassen {

                 /* Programm Kaffeetassen von Heiko Schmuck, im April 2011
                  * Das Programm beschreibt Kaffetassen und gibt die Beschreibung
                  * auf dem Bildschirm aus.
                  * In der achten Version mit einem Array und einer Zählschleife
                  * und einer switch - case Anweisung.
                  * Es können neue Tassen eingegeben werden.
                  */



                 // Als Platzhalter für unsere Tassen benutzen wir ein Array mit 5 Elementen
                 Tasse Tassen[] = new Tasse[5];

                 // Eine Variable die mit den Eingaben für die neue Tasse gefüllt wird.
                 Tasse neuTasse;

                 // In diese Variablen kommen die Eigenschaften der Tasse.
                 String neuFarbe, neuHenkel, neuAufdruck;
                 int neuHoehe, neuDurchmesser;

                 // Variable für die Antwort
                 String neuEingabe;


                 // Kaffeetassen haben die Eigenschaften: Farbe, Höhe, Durchmesser, Henkel, Aufdruck
                 Kaffeetassen () throws IOException {

                         // Hier wird die Tastatureingabe eingebunden
                         BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

                         // Abfragen ob eine neue Tasse eingegeben werden soll
                         System.out.println("Möchten Sie eine neue Tasse eingeben? J oder N eingeben.");
                         neuEingabe = in.readLine();.// Wartet auf eine Eingabe, die Eingabe wird mit Enter abgeschlossen.

                         // Nach der Eingabe prüfen ob ein "J" eingegeben wurde, ansonsten diesen Teil überspringen.
                         if(neuEingabe.equals("J")) {

                                 // Die Eigenschaften der neuen Tassen eingeben
                                 System.out.println("Farbe?");
                                 neuFarbe = in.readLine();
                                 System.out.println("Höhe?");
                                 neuHoehe = new Integer(in.readLine()).intValue();
                                 System.out.println("Durchmesser?");
                                 neuDurchmesser = new Integer(in.readLine()).intValue();
                                 System.out.println("Henkel?");
                                 neuHenkel = in.readLine();
                                 System.out.println("Aufdruck?");
                                 neuAufdruck = in.readLine();

                                 // Neue Tasse anlegen
                                 neuTasse = new Tasse(neuFarbe, neuHoehe, neuDurchmesser, neuHenkel, neuAufdruck);

                                 // Die neue Tasse ausgeben
                                 System.out.println();
                                 System.out.println("Die neue Tasse:");
                                 neuTasse.ausgeben();
                         }

                         Tassen[0] = new Tasse("Weiß", 10, 8, "Ja", "KIKISWEB");
                         Tassen[1] = new Tasse("Schwarz", 10, 8, "Ja", "JAVA");
                         Tassen[2] = new Tasse("Blau", 10, 8, "Ja", "SCHALKE");
                         Tassen[3] = new Tasse("Rot", 10, 8, "Ja", "BAYERN");
                         Tassen[4] = new Tasse("Gelb", 10, 8, "Nein", "BVB");

                         // Erst einmal eine Überschrift
                         System.out.println("Meine Kaffeetassen:");

                         // Dann die einzelnen Tassen ohne den BVB und Bayern. Stattdessen wird eine Fehlermeldug ausgegeben.
                         for(int i = 0; i < 5; i++) {
                                 switch(i) {
                                         case 0:
                                                 System.out.println("Kikisweb:");
                                                 System.out.println();
                                                 Tassen[i].ausgeben();
                                                 break;
                                         case 1:
                                                 System.out.println("Java:");
                                                 System.out.println();
                                                 Tassen[i].ausgeben();
                                                 break;
                                         case 2:
                                                 System.out.println("Schalke:");
                                                 System.out.println();
                                                 Tassen[i].ausgeben();
                                                 break;
                                         default:
                                                 System.out.println("Diese Tasse kann aus technischen Gründen nicht angezeigt werden !");
                                                 break;
                                 }
                         }

                 // und den Konstruktor Kaffetassen wieder schließen.
                 }

                 public static void main (String [] args) throws IOException {
                         new Kaffeetassen();
                 }

         // Die Klasse Kaffeetassen wieder schließen.
         }

         class Tasse {
                 // Erst einmal wieder Platzhalter für die Werte
                 String farbe, henkel, aufdruck;
                 int hoehe, durchmesser;


                 /* Ich beschreibe meine Tasse:
                  * f ist die Farbe und vom Typ String
                  * h ist die Höhe und vom Typ int
                  * d ist der Durchmesser und auch vom Typ int
                  * he ist die Aussage ob die Tasse einen Henkel hat oder nicht und vom Typ String
                  * a ist der Aufdruck und ebenfalls vom Typ String
                  */

                 Tasse (String f, int h, int d, String he, String a) {
                         farbe = f;
                         hoehe = h;
                         durchmesser = d;
                         henkel = he;
                         aufdruck = a;
                 }

                 // Die Methode ausgeben
                 void ausgeben () {
                         System.out.println("Farbe: " + farbe);
                         System.out.println("Höhe: " + hoehe);
                         System.out.println("Durchmesser: " + durchmesser);
                         System.out.println("Henkel: " + henkel);
                         System.out.println("Aufdruck: " + aufdruck);
                         System.out.println();
                 }

         // Die Klasse Tasse schließen
         }