Traversée par une variable String Java est utile lorsque vous devez traiter chaque caractère de la chaîne séparément. A String Java contient une série de personnages , comme une phrase en anglais . Par exemple, vous pouvez afficher tous les autres mots dans une phrase comme faisant partie d'un jeu de bousculade de mot . Il ya plusieurs façons de parcourir une chaîne , allant des appels répétés de la fonction " charAt " pour itérer un objet " CharacterIterator " . Norme Technique
régulière boucle "for" avec un appel répétitif de la fonction " charAt » est la façon la plus simple de traverser une variable String .
String str = " ; texte ici ";
for (int n = 0 ; n < str.length (); n + +) {char c = str.charAt (n); System.out.println ( c );} Photos
la fonction " charAt " renvoie le personnage à un index spécifique dans un temps constant. La boucle accède au premier caractère de la chaîne et une itération d'un caractère à la fois jusqu'à ce qu'il atteigne la fin de la chaîne . La fonction " System.out.println " affiche la valeur du personnage.
Traverse une chaîne Backwards
traverser une variable String dans l'ordre inverse en commençant par le dernier caractère et le déplacement vers l'arrière jusqu'à ce que la boucle atteint le premier caractère de la chaîne
String str = " texte ici"; .
for (int n = str.length () -1; n> = 0; n - ) {char c = str.charAt (n); System.out.println ( c );}
Traverse avec un « pour - chaque « boucle
Il est possible de parcourir une chaîne avec une " for-each " construire, mais vous devez d'abord appeler le " " fonction ToCharArray ( ), qui crée un tableau de caractères de la chaîne de Variable:
String str = " texte ici";
pour (char c: str.toCharArray ()). {System.out.println ( c); } < br >
Malheureusement, le " ToCharArray ()" fonction est livré avec des frais généraux car il doit créer un tout nouveau tableau de caractères à partir de la variable String.
Traverse avec un " CharacterIterator " objet
une autre façon de traverser une chaîne est de créer un objet " CharacterIterator " de la chaîne, puis itérer l'objet avec une normale boucle "for" .
CharacterIterator str_it = new StringCharacterIterator ( " texte ici ");
pour (char c = str_it.first (); c = CharacterIterator.DONE ; ! c = str_it.next ()) { System.out.println ( c); }
Sinon, parcourir la " CharacterIterator " dans l'ordre inverse avec le "dernier" et les fonctions "précédent"
pour (char c = str_it.last . (); c = CharacterIterator.DONE ; ! c = str_it.previous ()) { System.out.println ( c); }