Ich versuche ein einfaches Menü basierend akzeptieren und Anzeige String-Code in Java.Hier, wenn ich nur eine einzige Zeichenfolge pro Zeile der Eingabe akzeptieren und anzeigen möchte, kann ich mit next()
, aber für Leerzeichen getrennt Zeichenfolge als Eingabe kann ich nicht akzeptieren und angezeigt werden, wie vorgesehen.mehrere Zeilenabstand getrennte Zeichenfolge Eingabe vom Benutzer in Java
Dies ist der Code:
import java.util.Scanner;
class Trial
{
String c,l;
public static void main(String[] args)
{
Trial t=new Trial();
int ch=0;
Scanner sc=new Scanner(System.in);
while(ch!=3)
{
System.out.println("1.acc");
System.out.println("2.dis");
System.out.println("3.exit");
System.out.println("enter ch");
ch=Integer.parseInt(sc.next());
switch(ch)
{
case 1:
System.out.println("enter C");
t.c=sc.nextLine();
System.out.println("enter L");
t.l=sc.nextLine();
sc.nextLine();
break;
case 2:
System.out.println("c = "+t.c);
System.out.println("l = "+t.l);
break;
}
}
}
}
dies ist die Ausgabe, die ich erhalte:
--------------------- --- Ausgabe ------------
1.acc
2.dis
3.ex
eseingeben ch
eingeben C
eingeben L
www eee
rrr ttt
1.acc
2.dis
3.exit
eingeben ch
c =
l = www eee
------- ----------- Ausgang endet ---------
wobei ich möchte, dass der Ausgang
istc = www eee "und l =" rrr ttt.
dank
'nextline()', bis die '\ n 'lesen. Vielleicht sollten Sie versuchen, die [Scanner-Trennzeichen] zu ändern (http://stackoverflow.com/questions/28766377/how-doi-i-use-a-limimiter-in-java-scanner) –