Die Begrenzung der Anzahl der Zeichen in einem Benutzer-Eingabe über den Scanner in String in Java
Dieser code soll, drucken Sie den Namen des Benutzers, wenn Sie es betreten, und beschränken Sie die Länge auf 20 Zeichen begrenzt, aber es funktioniert nur, wenn der Benutzername ist länger als 20 Zeichen. Ich bekomme de Fehler, wenn es unter 20. Irgendwelche Ideen auf, wie man dieses Problem beheben?
Danke.
String name;
Scanner textIn = new Scanner(System.in);
System.out.print("Enter your Name ");
name = textIn.nextLine();
String cutName = name.substring(0, 20);
if (name.length()>20) {
name = cutName;
System.out.print("Hello " +name+"!");
}
- Sie haben zu tun, die lengthcheck, bevor Sie die Teilzeichenfolge. Sie könnten einfach verwenden:
String cutName = name.length() <= 20 ? name : name.substring(0,20);
- set System.aus.print("Hallo" +name+"!"); out-of-loop
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie zu Ihrem String cutName innerhalb der wenn, die Fehlermeldung sollte verschwinden. Sie können nicht nehmen Sie einen Teilstring aus einem string, der länger ist als die Saite selbst.
Nehmen Sie einfach den unteren index zwischen 20 und die
String
's Länge .