Tecnología

Inicio

Atravesando A través de una variable de cadena en Java

Atravesando través de una variable String de Java es muy útil cuando se necesita para procesar cada carácter de la cadena por separado. Un String de Java contiene una serie de caracteres, como una sentencia de Inglés. Por ejemplo, puede mostrar cada palabra en una oración como parte de un juego de sopa de letras. Hay varias maneras de atravesar una cadena, que van desde llamadas repetitivas de la función "charAt" para iterar a través de un objeto "CharacterIterator".

Técnica Standard

Un habitual "para" bucle repetitivo con una llamada de la función "charAt" es la forma más directa para atravesar una variable de cadena.

String 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 a un índice específico en un tiempo constante. El bucle de acceso al primer carácter de la cadena e itera transmita 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.

Atravesar una cadena al revés

Traverse una variable String en orden inverso empezando por el último carácter y moviéndose hacia atrás hasta que el bucle alcanza el primer carácter de la cadena.

String str = "texto aquí";

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 iterar a través de una cadena con un "para-cada" constructo, pero primero tiene que llamar a la "toCharArray) (" la función, lo que crea una matriz de caracteres de la variable de cadena.

String str = "texto aquí";

para (char c: str.toCharArray ()) {
System.out.println (c);
}

Por desgracia, la función "toCharArray ()" viene con un coste de arriba porque tiene que crear una nueva matriz de caracteres de la variable de cadena.

Traverse con un objeto "CharacterIterator"

Otra forma de recorrer una cadena es mediante la creación de un objeto "CharacterIterator" de la cadena y luego iterar a través del 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);

}

Alternativamente, iterar a través de la "CharacterIterator" en orden inverso con los "últimos" y funciones "anteriores".

para (char c = str_it.last ();! c = CharacterIterator.DONE; c = str_it.previous ()) {

System.out.println(c);

}