Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich bin blutiger Java Anfänger und bräuchte eine kurze Hilfestellung.
Und zwar habe ich ein Auswahlmenü gebastelt, über das man über die Eingabe eines bestimmten Buchstabens in eine Methode springt.
Jetzt möchte ich nach beenden der Methode, das Programm aber nicht beenden, sondern zum Auswahlmenü zurückspringen um quasi bei Eingabe eines anderen Buchstabens in eine andere Methode springen zu können.
Hättet ihr zu dieser Thematik ein paar Lösungsvorschläge für mich? Bräuchte eine kleine Gedankenstütze, da ich gerade leider bisschen auf dem Schlauch stehe.
Das Problem ist so nicht nachvollziehbar, da nach der Ausführung einer Methode das Programm automatisch an der Stelle des Methodenaufrufs fortgesetzt wird (sofern man keine Ausnahme auslöst oder die JVM hart beendet).
Das Problem ist so nicht nachvollziehbar, da nach der Ausführung einer Methode das Programm automatisch an der Stelle des Methodenaufrufs fortgesetzt wird (sofern man keine Ausnahme auslöst oder die JVM hart beendet).
Ja stimmt. Zur Erläuterung, ich habe eine switch case Verzweigung mit break. Wenn ich den break rausmach, macht das Programm mit der nächsten Methode weiter. Was soweit ja korrekt wäre. Ich möchte aber immer erst den Benutzer fragen, was er als nächstes tun möchte. Sprich die Methode durchlaufen und danach wieder in die main Methode um das Auswahlmenü aufzurufen um von da aus wieder in die Methode zu gelangen. Ich hätte es mit einer while Schleife gelöst, weiß allerdings nicht wie ich dem Compiler beibringen kann dass die Methode beendet ist und er jetzt wieder das Auswahlmenü aufrufen soll. Falls das überhaupt so möglich ist.
Okay. Es geht um diese bescheuerte Lagerverwaltung die hier schon zigtausend mal besprochen wurde, deshalb wollte ich das eigentlich vermeiden. Wenn ich mir allerdings die Lösungswege meiner Vorgänger anschaue und ausprobiere stoße ich nur auf Fehler. Außerdem ist die Vorgehensweise in den Heften eigentlich besprochen. Um das Durchlaufen eines zweidimensionalen Arrays zu ermöglichen braucht man eine verschachtelte for-Schleife. Hab ich in meinem Code realisiert. Jetzt möchte ich nach den Methoden wieder in das Auswahlmenü, das ist alles woran es gerade ein bisschen hakt. Nichts desto trotz, hier ist der Code (falls noch weitere Fehler auffallen immer raus damit).
Java:
int [][] lagerverwaltung = new int [75][4];
String einlesen;
char c1 ;
System.out.println("Folgende Funktionen stehen Ihnen zur Verfügung");
System.out.println("A = Eingabe einer neuen Kiste");
System.out.println("B = Löschen einer vorhandenen Kiste");
System.out.println("C = Ändern der Daten einer vorhandenen Kiste");
System.out.println("D = Anzeigen der Daten einer vorhandenen Kiste");
System.out.println("E = Auflisten aller Kisten");
einlesen = JOptionPane.showInputDialog("Was möchten Sie tun?");
c1=einlesen.charAt(0);
switch(c1) {
case 'A':
case 'a':
eingabe(lagerverwaltung);
break;
case 'C':
case 'c':
aendern(lagerverwaltung);
break;
}
} // Ende Main Methode
static void eingabe (int [][]lagerverwaltung) {
for(int indexAussen = 0; indexAussen < lagerverwaltung.length; indexAussen++) {
for (int indexInnen = 0; indexInnen < lagerverwaltung[indexAussen].length; indexInnen++)
if(lagerverwaltung[indexAussen][0]== 0)
lagerverwaltung[indexAussen][0]=Integer.parseInt(JOptionPane.showInputDialog("Bitte die Zahl eingeben"));
lagerverwaltung[indexAussen][1]=Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie die Länge der Kiste ein"));
lagerverwaltung[indexAussen][2]=Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie die Breite der Kiste ein"));
lagerverwaltung[indexAussen][3]=Integer.parseInt(JOptionPane.showInputDialog("Bitte geben Sie die Höhe der Kiste ein"));
break;
}
} // Ende Eingabe Methode
Dann solltest du unter System.out.println("Folgende Funktionen stehen Ihnen zur Verfügung"); noch hinzufügen: System.out.println("X = Programm abbrechen");.
Und dann das Programm (in einer Schleife) solange laufen lassen, bis "X" eingegeben wurde.