raffiSSL
Lt. Junior Grade
- Registriert
- Feb. 2006
- Beiträge
- 289
Hallo, habe ein kleines Problem das ich nicht so recht kapieren will, hier erstmal der wichtige Teil des Quelltextes:
Das Problem oder eher fragwürdige ist das beenden der do-while Schleife. Er gibt mir wenn ich die 6 drücke den case 6 UND den default aus. Auch hier die Frage, warum? Er dürfte doch eigentlich nur in den case 6 reingehen und dann aus der Schleife springen, aber das macht er erst nachdem er den default aufgerufen hat.
Ich hoffe die Erklärung reicht so.
mfg
EDIT: Nullpointer Problem gelöst, siehe "Grund".
Code:
public class Main {
Professur[] prof;
Professur testProf;
SimpleInput in;
int auswahl; //Menü-Auswahl Variable
int i; //Zählvariable für Schleifen in Methoden
int zaehl; //Zählvariable für Professur-Feld
String profName;
public Main () {
prof = new Professur[50];
testProf = new Professur();
auswahl = 0;
i = 0;
zaehl = 0;
in = new SimpleInput();
}
public void go () {
System.out.println("Was wollen sie tun?");
System.out.println("1: Professur anlegen");
System.out.println("2: Lehrveranstaltung anlegen");
System.out.println("3: Professuren anzeigen");
System.out.println("4: Lehrveranstaltungen einer Professur anzeigen");
System.out.println("5: alle Lehrveranstaltungen anzeigen");
System.out.println("6: Programm beenden");
System.out.println("===============================================");
do {
auswahl = in.readInt("Auswahl: ");
System.out.println();
switch (auswahl) {
case 1:
prof[zaehl] = testProf.anlegenProf();
zaehl++;
case 2:
suche();
case 3:
anzeigeProf();
case 4:
case 5:
case 6:
System.out.println("Programm beendet.");
default:
System.out.println("Falsche Eingabe, bitte versuchen Sie es noch einmal.");
}
} while (auswahl != 6 && i < 50);
}
Das Problem oder eher fragwürdige ist das beenden der do-while Schleife. Er gibt mir wenn ich die 6 drücke den case 6 UND den default aus. Auch hier die Frage, warum? Er dürfte doch eigentlich nur in den case 6 reingehen und dann aus der Schleife springen, aber das macht er erst nachdem er den default aufgerufen hat.
Ich hoffe die Erklärung reicht so.
mfg
EDIT: Nullpointer Problem gelöst, siehe "Grund".
Zuletzt bearbeitet:
(Hatte vergessen die testProf-Variable zu initialiseren, das Nullpointer Problem ist also gelöst.)