Percorrendo caracteres
Processe cada char em uma cadeia de caracteres
Percorrendo caracteres é uma aula grátis de Java Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Java Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Java Academy inclui 4 aulas no total.
As cadeias de caracteres são formadas por caracteres
Uma String é uma sequência de caracteres. Cada caractere ocupa uma posição chamada índice, começando em 0.
Em "Java", o índice 0 é 'J', o índice 1 é 'a' e assim por diante. Percorrer a cadeia permite visitar cada caractere em ordem.
String word = "Java";
// indexes: 0=J 1=a 2=v 3=acharAt obtém um caractere
O método charAt(index) retorna o caractere em uma determinada posição de uma cadeia de caracteres.
Os índices vão de 0 a length() - 1. Solicitar um índice fora desse intervalo lança um erro.
public class Main {
public static void main(String[] args) {
String word = "Java";
System.out.println(word.charAt(0));
System.out.println(word.charAt(3));
}
}Qual é o comprimento da cadeia de caracteres
O método length() retorna quantos caracteres uma cadeia de caracteres contém.
Para "Java", ele retorna 4. Como os índices começam em 0, o último índice válido é sempre length() - 1.
public class Main {
public static void main(String[] args) {
String word = "Hello";
System.out.println(word.length());
}
}Percorrendo com um índice
Um laço for clássico percorre o índice de 0 até length() - 1, chamando charAt a cada vez.
Isso fornece tanto a posição quanto o caractere, o que é útil quando o índice é importante.
public class Main {
public static void main(String[] args) {
String word = "Java";
for (int i = 0; i < word.length(); i++) {
System.out.println(word.charAt(i));
}
}
}O laço for aprimorado
Se você não precisar do índice, converta a cadeia de caracteres em um vetor de caracteres com toCharArray() e use um laço para cada elemento.
Isso resulta em uma leitura clara: para cada caractere c da palavra, faça algo.
public class Main {
public static void main(String[] args) {
String word = "Java";
for (char c : word.toCharArray()) {
System.out.println(c);
}
}
}Imprimindo em uma única linha
Use System.out.print em vez de println para manter os caracteres na mesma linha.
Isso é útil ao reconstruir ou transformar um texto caractere por caractere.
public class Main {
public static void main(String[] args) {
String word = "Java";
for (char c : word.toCharArray()) {
System.out.print(c);
}
System.out.println();
}
}Transformando cada caractere
Dentro do laço, você pode alterar cada caractere antes de usá-lo. Aqui, convertemos todas as letras para maiúsculas à medida que avançamos.
Criamos uma nova cadeia de caracteres porque a cadeia original não pode ser modificada; cadeias de caracteres são imutáveis.
public class Main {
public static void main(String[] args) {
String word = "java";
String result = "";
for (char c : word.toCharArray()) {
result += Character.toUpperCase(c);
}
System.out.println(result);
}
}Percorrendo de trás para frente
Para inverter uma cadeia de caracteres, percorra-a do último índice até 0 usando charAt.
Comece com i em length() - 1 e diminua seu valor até chegar a 0.
public class Main {
public static void main(String[] args) {
String word = "Java";
for (int i = word.length() - 1; i >= 0; i--) {
System.out.print(word.charAt(i));
}
System.out.println();
}
}Observe os limites
Sempre percorra enquanto i < word.length(), nunca enquanto i <= word.length().
Passar uma posição além do fim chama charAt com um índice inválido e lança uma StringIndexOutOfBoundsException.
String word = "Hi";
// valid indexes: 0 and 1 only
// charAt(2) would crashEncontrando um caractere
Percorra a cadeia e compare cada caractere com == para encontrar um alvo. Aqui, informamos o índice da primeira ocorrência de 'a'.
Paramos mais cedo com break assim que o encontramos.
public class Main {
public static void main(String[] args) {
String word = "Java";
for (int i = 0; i < word.length(); i++) {
if (word.charAt(i) == 'a') {
System.out.println("Found at " + i);
break;
}
}
}
}Lendo uma cadeia de caracteres
Percorrer caracteres é a base de tarefas de pesquisa, substituição e validação.
Sempre que precisar inspecionar um texto com atenção, percorrer cada caractere com um laço é a ferramenta padrão.
for (char c : "ab".toCharArray()) {
System.out.println(c);
}Verificação rápida
Teste sua compreensão sobre como percorrer caracteres.
Recapitulação
Use charAt(i) com um laço baseado em índice ou toCharArray() com um laço para cada elemento para visitar todos os caracteres.
Percorra enquanto i < length() para permanecer dentro dos limites e crie novas cadeias de caracteres, pois elas são imutáveis. Esse padrão permite pesquisar e transformar textos.
Perguntas Frequentes
A aula “Percorrendo caracteres” é grátis?
Sim — o texto completo de “Percorrendo caracteres” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Java Academy, atualize para CoddyKit PRO. O curso de Java Academy inclui 4 aulas no total.
O que vou aprender em “Percorrendo caracteres”?
Processe cada char em uma cadeia de caracteres Você pratica Java Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Java Academy?
Nenhuma experiência prévia é necessária. Java Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Percorrendo caracteres”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Java Academy?
Sim. Cada aula de Java Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O tipo primitivo char
- Métodos auxiliares de caracteres
- Percorrendo caracteres
- Contando e filtrando chars