¿Ya dominas lo básico? Un curso estructurado de Dart & Flutter es la vía rápida para dar el salto.
Ver cursos de Dart & Flutter en UdemyEnlace de afiliado. No te cuesta nada extra.
- 01Preparar el entorno (lo que necesitas)
- 02Tu primera salida (print)
- 03Variables y tipos (var y anotaciones)
- 04Seguridad frente a null (? y !)
- 05Condicionales (la sentencia if)
- 06Repetir (el bucle for)
- 07Escribir tu propia función
- 08Repetir (el bucle while)
- 09Trabajar con listas (List)
- 10Trabajar con diccionarios (Map)
- 11Clases (orientación a objetos)
- 12Constructores
- 13Herencia
- 14Argumentos con nombre
- 15Trabajo asíncrono (Future, async, await)
- 16Trabajar con texto
- 17La sentencia switch
- 18El operador ternario
- 19Métodos de extensión
- 20[Proyecto] Construye un mini sistema de inventario
Trabajar con texto
En esta lección medirás una cadena de texto y extraerás una parte de ella.
length es una propiedad, no un método, así que se escribe sin paréntesis. substring(0, 5) devuelve la parte que va desde la posición 0 hasta la 5 sin incluirla; es decir, cinco caracteres.
El código de ejemplo muestra la longitud del texto y sus primeros cinco caracteres.
Aquí hay un contraste que conviene notar. En C++ el mismo ejemplo cortaría por la mitad la ¡ inicial, porque allí se cuenta en bytes. Dart cuenta en unidades UTF-16, y la ¡ ocupa solo una, así que los acentos y los signos de apertura del español se comportan como esperas. Donde sí se rompe la ilusión es con los emojis y algunos caracteres poco frecuentes, que ocupan dos unidades: para esos casos existe characters, del paquete oficial del mismo nombre.
El otro punto que sorprende es que las cadenas son inmutables: toUpperCase() no cambia el original, sino que devuelve uno nuevo. Si el resultado no lo guardas en ninguna variable, se pierde.
🧪 Este sitio no puede compilar ni ejecutar Dart directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).
