Scanner zwei mal benutzen (Java)?
Hallo! Ich habe angefangen in Java zu programmieren und mache ganz guten Fortschritt, aber ich habe bei einer Aufgabe ein Problem. Und zwar möchte ich einen Scanner mit DERSELBEN Scanner-Variable NOCHMAL eingeben. Geht das und wenn ja, wie? Das wäre die Lösung die ich für das Programm bräuchte. Danke schonmal im voraus!
3 Antworten
Was spricht denn dagegen es einfach zu tun? Einfach nochmal .next() aufrufen und der selben Variablen zuweisen
Scanner s = new Scanner(System.in);
int i = s.nextInt();
int j = s.nextInt();
s.close();
Darfst ihn halt erst am ende "schließen".
Hallo. Ich verstehe leider nicht genau was du meinst.
Ein Scanner ist an den InputStream gekoppelt, von dem er liest. Wenn du ihn erzeugt hast, kannst du ihn so lange nutzen wie der dazugehörige InputStream besteht. D.h. wenn du einen Scanner für System.in erstellt hast, kannst du damit beliebig oft Eingaben einlesen.
Wenn du allerdings von einer anderen Quelle etwas einlesen möchtest brauchst du einen neuen Scanner. Ebenso kann es zu problemen führen wenn du einen zwei Scanner mit dem gleichen InputStream initialisierst und zeitgleich verwendest.
Oooookay, danke. Habe jetzt alles hinbekommen. Ich bringe es mir selbst bei ist deshalb ein bisschen kompliziert.