2016-07-22 11 views
-2

Ich habe eine Frage in Bezug auf das Lesen von Zeichenfolgen von Java-Konsole. Wenn ich jede Zeile eingeben, bis ich mit "Stop" stoppe Alle diese Wörter sollten in einem Array von String gespeichert werden.Java-Konsole lesen Zeile für Zeile lesen und speichern in String-Array

Mein Eingang wird:

Apfel
Mango
Trauben
Anschlag -----> auf den String stoppen endet hier

Alle drei Früchte Namen werden gespeichert in temp.

Aber wenn ich ein Wort eintippe und ein anderes eingeben möchte, indem ich auf Enter klicke, um zur nächsten Zeile zu gehen, wird die Ausgabe ausgegeben.

Wie soll ich das ändern?

Scanner scanner=new Scanner(System.in); 
System.out.println("Enter the words"); 
String temp=scanner.nextLine(); 
+0

Statue :) put scanner.nextLine() in einer while-Schleife und Ausgang :) – amitmah

+1

Bitte senden Sie eine [ mcve] des von dir beschriebenen Verhaltens. –

Antwort

1

Ihr Problem ist, dass Sie eine Zeile von der Konsole lesen und drucken.

Was Sie tun sollten, ist Lesen Zeilen bis "Stop", und das könnte getan werden, indem Sie eine While-Schleife.

für Sie Dieser Code sollte gut funktionieren: auf bestimmten Wort Ihrer Wahl wie okstop nur

Scanner scanner = new Scanner(System.in); 
System.out.println("Enter the words"); 
String input = scanner.nextLine(); // variable to store every input line 
String fruits = "";  // this should store all the inputs in one string 
while(! input.equals("stop")) { 
    fruits += input + ","; // using comma to separate the inputs 
    input = scanner.nextLine(); 
} 
String[] res = fruits.split(","); // splitting the string to have its content in an array 
+0

Hallo., Vielen Dank Ich habe den while Teil alleine aus deinem Code benutzt. Jetzt funktioniert es für mich. – Anu

+0

Bitte [akzeptieren Sie die Antwort] (http://meta.stackexchange.com/a/5235/155831), wenn dies zur Lösung des Problems beigetragen hat. –

Verwandte Themen