Desplazamiento a través de una variable String Java es útil cuando se necesita para procesar cada carácter de la cadena por separado. A String de Java contiene una serie de personajes , como una oración Inglés . Por ejemplo , puede mostrar cada palabra en una oración como parte de un juego de palabras revolver . Hay varias maneras para atravesar una cadena , que va desde las llamadas repetitivas de la función " charAt " para iterar a través de un objeto " CharacterIterator " . Técnica Estándar
regulares bucle "for" con un llamado repetitivo de la función " charAt " es la forma más sencilla de recorrer una variable String
cadena str = " . ; texto aquí " ;
for (int n = 0 , n < str.length (); n + +) {char c = str.charAt (n ) ; System.out.println ( c ) ;}
la función " charAt " devuelve el carácter de un índice específico en un tiempo constante. El bucle de acceso al primer carácter de la cadena y se repite hacia adelante un carácter a la vez hasta que llega al final de la cadena. La función " System.out.println " muestra el valor del carácter .
Traverse una cadena hacia atrás
atravesar una variable String en el orden inverso , comenzando en la último carácter y se mueve hacia atrás hasta que el bucle alcanza el primer carácter de la cadena
cadena str = "text here" ; .
for (int n = str.length () -1 ; n> = 0 , n -) {char c = str.charAt (n ) ; System.out.println ( c ) ;}
Traverse con un " para - cada " Loop
es posible recorrer una cadena con un" para - cada " construir , pero primero tiene que llamar a la " función " ToCharArray (), que crea una matriz de caracteres de la variable String
cadena str = "text here" ;
para (char c: str.toCharArray ()) . { System.out.println ( c ) ;} < br >
Desafortunadamente , el " ToCharArray ()" función viene con un costo de gastos generales , ya que debe crear una nueva matriz de caracteres de la variable String .
Traverse con un " CharacterIterator " objeto
Otra forma de recorrer una cadena es creando un objeto " CharacterIterator " de la cadena y luego recorrer en iteración el objeto con una normal de bucle "for" .
CharacterIterator str_it = new StringCharacterIterator ( " texto aquí ");
para (char c = str_it.first (); c = CharacterIterator.DONE ; ! c = str_it.next ()) { System.out.println ( c ) ;}
alternativa, recorrer la " CharacterIterator " en orden inverso con las funciones " anteriores" "último" y arte de
(char c = str_it.last . ( ) c = CharacterIterator.DONE ; ! c = str_it.previous ()) { System.out.println ( c ) ;}