Caracteres de String como stream
Procesa los caracteres de un string como un pipeline de stream.
Comparación de Código
✕ 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));
¿Ves un problema con este código? Cuéntanos.
Por qué gana la forma moderna
Encadenable
Usa filter, map, collect sobre streams de caracteres.
Declarativo
Describe qué hacer, no cómo iterar.
Listo para Unicode
codePoints() maneja correctamente emojis y caracteres suplementarios.
Enfoque Antiguo
Bucle manual
Enfoque Moderno
Stream de chars()
Desde JDK
9
Dificultad
Principiante
Soporte JDK
Caracteres de String como stream
Disponible
Disponible desde JDK 8+ (mejorado en 9+)
Cómo funciona
String.chars() devuelve un IntStream de valores de caracteres, permitiendo procesamiento funcional. Para soporte Unicode, codePoints() maneja correctamente los caracteres suplementarios.
Documentación Relacionada