Comment scinder une chaîne à partir de la première de l'espace occurrence uniquement Java
J'ai essayé de découper une chaîne à l'aide de la chaîne.De l'Index et de la corde.la longueur mais j'obtiens une erreur que la chaîne est hors de portée. Comment puis-je régler ce problème?
while (in.hasNextLine()) {
String temp = in.nextLine().replaceAll("[<>]", "");
temp.trim();
String nickname = temp.substring(temp.indexOf(' '));
String content = temp.substring(' ' + temp.length()-1);
System.out.println(content);
Examinons ce qui se passe si il n'y a pas de
' '
dans temp
, puis de gérer ce cas.' '
a une valeur ASCII de 32, de sorte ' ' + temp.length()-1
va être de plus de 32, et je doute temp.length()
est supérieure à 32. Vous avez besoin d'utiliser temp.indexOf(' ')
au lieu de simplement ' '
et n'ajoutez pas de temp.length()-1
.OriginalL'auteur Dimitrios Sria | 2016-09-27
Vous devez vous connecter pour publier un commentaire.
Doit être autour de ceci:
OriginalL'auteur Alex Chermenin
Utiliser le java.lang.Chaîne de fonction de répartition avec une limite.
Vous obtiendrez:
OriginalL'auteur Steve Owens
split prend une limite d'entrée en restreignant le nombre de fois que le motif est appliqué.
http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.Chaîne, les%20int)
OriginalL'auteur Sid