Hallo. Bin Programmieranfänger und sitze schon ne Weile an dem Problem. Und zwar mussich die Usereingabe des Benutzers in ein Array speichern. Ich kann zum Beispiel den Nutzer hintereinander Fragen, welche Filme er in das Array speichern will. Wie mache ich das aber nach jedem Programmstart? Darüber konnte ich leider nichts finden. Im folgenden Beispiel will Ich, dass der Benutzer den Namen des Films angibt und es in das Array gespeichert wird. Auch würde ich gerne wissen, wie ich beliebig Filme abspeichern kann statt nur 5 wie hier.
Java:
System.out.println("Bitte geben Sie den Namen des Films an: ");int filmnummer=1;String[]Filme=newString[5];Filme[filmnummer]= scanner.nextLine();System.out.println("Der Name des "+filmnummer+". Films ist "+Filme[filmnummer]);
filmnummer++;
Dazu müsste man doch die Abfrage nach der Anzahl der Filme, die man abspeichern will, erst einmal ermitteln. Also sollte man vor Beginn die Frage nach der Anzahl der Filme stellen, oder?
Anschließend könnte man es mit einer Schleife, hier liegt die Wahl ganz bei dir, das Array füllen und anschließend das Array ausgeben lassen.
Die Anzahl der Filme ist unbekannt. Es soll einfach nur 1 Film bei jeder Ausführung gespeichert werden. Ich hab das auf 5 begrenzt, weil das grad eher unwichtig ist. Wichtig ist es zu wissen, wie ich die Filme nach jedem Programmstart nacheinander abspeichern kann. Ich hab mal bisschen weiter experimentiert.
Java:
publicstaticvoidFilme(){System.out.println("Bitte geben Sie den Namen des Films an: ");int filmnummer=0;
filmnummer=filmnummer+1;String[]Filme=newString[5];Filme[filmnummer]= scanner.nextLine();System.out.println("Der Name des "+filmnummer+". Films ist "+Filme[filmnummer]);for(int i=1;i<5;i++){System.out.println(Filme[i][i]);}
Also mein Problem hier ist, dass das Programm die Filmnummer nicht jedes mal um 1 erhöht, wenn ich das Programm ausführe. jedesmal kommt das Ergebnis raus. Also immer der Name des 1. Films, statt des 2., 3. usw.
Code:
Bitte geben Sie den Namen des Films an:
abc
Der Name des 1. Films ist abc
abc
null
null
null
Ist es ein Bestandteil der Aufgabe? Dazu gehört eine ganze Menge mehr, als ich in deinem Code sehe. Wenn ich es richtig sehe, startest du das Programm immer wieder neu, so dass du die Ausgabe bekommst. Dein Programm sollte jedoch, bevor er terminiert, den Array, bzw. die Daten des Programms speichern und natürlich beim Aufruf des Programms in das Programm laden. Wie ich bereits schrieb, sehe ich es nicht.
Das Speichern und laden haben wir noch nicht gelernt. Wahrscheinlich versuche Ich grad zu viel. Ich frag einfach nochmal nach. Danke für deine Hilfe ^^