Strings Iniciante

Processe caracteres de uma string como um pipeline de stream.

✕ Java 8
for (int i = 0; i < str.length(); i++) {
    char c = str.charAt(i);
    if (Character.isDigit(c)) {
        process(c);
    }
}
✓ Java 9+
str.chars()
    .filter(Character::isDigit)
    .forEach(c -> process((char) c));
Viu um problema com este código? Nos avise.
🔗

Encadeável

Use filter, map e collect em streams de caracteres.

📐

Declarativo

Descreva o que fazer, não como iterar.

🌐

Preparado para Unicode

codePoints() lida corretamente com emojis e caracteres suplementares.

Abordagem Antiga
Loop manual
Abordagem Moderna
Stream com chars()
Desde o JDK
9
Dificuldade
Iniciante
Caracteres de String como stream
Disponível

Disponível desde o JDK 8+ (aprimorado no 9+)

String.chars() retorna um IntStream dos valores dos caracteres, permitindo processamento funcional. Para suporte a Unicode, codePoints() lida corretamente com caracteres suplementares.

Compartilhar 𝕏 🦋 in