Atravessando através de uma variável Java String é útil quando você precisa para processar cada caractere na cadeia separadamente. A Cadeia Java contém uma série de personagens, como uma frase Inglês . Por exemplo, você pode exibir qualquer outra palavra em uma frase como parte de um jogo de corrida palavra . Existem várias maneiras de percorrer uma String, que vão desde as chamadas repetitivas da função " charAt " para iterar um objeto " CharacterIterator " . Técnica Padrão
regular " para" loop com um apelo repetitivo da função " charAt " é a maneira mais simples para percorrer uma variável String .
String str = " , o texto aqui ";
for (int n = 0; n < str.length (); n + +) {char c = str.charAt (n ); System.out.println ( c );}
a função " charAt " retorna o caractere em um índice específico em um tempo constante. O loop acessa o primeiro caractere na String e repete avançar um carácter de cada vez até atingir o final da cadeia. A função " System.out.println " exibe o valor do personagem.
Traverse uma String Backwards
Traverse uma variável String na ordem inversa , começando no última personagem e andar para trás até que o loop atinge o primeiro caractere na seqüência
string str = "text aqui "; .
for (int n = str.length () -1 ; n> = 0; n - ) {char c = str.charAt (n ); System.out.println ( c );}
Traverse com um " para - cada " loop
é possível para percorrer uma String com um" for-each " construir, mas primeiro você precisa ligar para a " função " ToCharArray (), que cria um array de caracteres da variável String
string str = "text aqui ";
para (char c: str.toCharArray ()). {System.out.println ( c); } < br >
Infelizmente , a função " ToCharArray ()" vem com um custo indireto , pois deve criar uma inteiramente nova matriz de caracteres a partir da variável de cadeia.
Traverse com um " CharacterIterator " objeto
Outra forma de percorrer uma string é através da criação de um objeto " CharacterIterator " da String e depois iterar o objeto com um normal " para" loop.
CharacterIterator str_it = new StringCharacterIterator ( " texto aqui ");
para (char c = str_it.first (); ! c = CharacterIterator.DONE ; c = str_it.next ()) { System.out.println ( c); . }
Alternativamente, percorrer a " CharacterIterator " na ordem inversa com o "último" e funções " anteriores"
para (char c = str_it.last (); c = CharacterIterator.DONE ; ! c = str_it.previous ()) { System.out.println ( c); }