Tastatureingabe
Hi Experten,
bin leider kein guter Programmieren und mit Java kenne ich mich auch nicht sonderlich aus. Habe da jetzt ein kleines Problem. Ich möchte gerne einen Benutzernamen vom Benutzer abfragen und diesen dann speichern, doch leider wird genau das im Programm immer übersprungen. Vorher gibt der Benutzer die Anzahl der Spieler ein, das funktioniert wunderbar. Zum einlesen von der Tastatur verwende ich die Scanner-Klasse.
Hier mal mein Code:
Verstehe leider nicht warum er da nicht bei name = s.nextline() stehen bleibt. Kann mir dabei jemand helfen?
Danke schon mal
Gruß
bin leider kein guter Programmieren und mit Java kenne ich mich auch nicht sonderlich aus. Habe da jetzt ein kleines Problem. Ich möchte gerne einen Benutzernamen vom Benutzer abfragen und diesen dann speichern, doch leider wird genau das im Programm immer übersprungen. Vorher gibt der Benutzer die Anzahl der Spieler ein, das funktioniert wunderbar. Zum einlesen von der Tastatur verwende ich die Scanner-Klasse.
Hier mal mein Code:
public void place() {
String name = null;
System.out.println("Bitte die Anzahl der Spieler eingeben: ");
if(s.hasNextInt()) {
countOfPlayers = s.nextInt();
}else{
System.err.println("Ungültige Eingabe");
s.next();
}
// System.out.println("Bitte Spielername eingeben: ");
// s.nextLine();
// countOfPlayers = 2;
// System.out.println("Bitte die Anzahl der Tipps pro Spieler eingben: ");
// countOfTip = s.nextInt();
//countOfTip = 5;
//int playerTip = new int[countOfTip];
for (int cp = 0; cp < countOfPlayers; cp++) {
if(!s.hasNextLine()) {
System.out.println("Bitte Spielernamen eingeben");
name = s.nextLine();
}else{
System.err.println("Fehler");
s.next();
}
player.setName(name);
System.err.println("NAME= " + name);
//System.out.println(player.getName());
System.out.println("Bitte 5 Zahlen eingeben");
for (int i = 0; i < 5; i++) {
while (!s.hasNextInt()) {
System.err.println("Das ist keine Zahl, NOOB!\n");
s.next();
}
//System.out.println("Tipp " + i+1 + "/" + countOfTip);
int number = s.nextInt();
playerTip[i] = number;
}
player.setPlayerTip(playerTip);
//pl.add(player);
pl.add(player);
}
//s.close();
}
Verstehe leider nicht warum er da nicht bei name = s.nextline() stehen bleibt. Kann mir dabei jemand helfen?
Danke schon mal
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 320788
Url: https://administrator.de/contentid/320788
Ausgedruckt am: 22.11.2024 um 22:11 Uhr
1 Kommentar