Puede controlar el flujo de su código de DART utilizando cualquiera de los siguientes:
If / Else
Para este tipo de condicionales, la sección del ELSE es opcional.
condicionalIfElse(){ // Imprime linea por consola. stdout.writeln('¿Cual es tu edad?'); // Solcitiar información // La misma es asignada a una variable int edad = int.parse(stdin.readLineSync()); // Realizo condición, para sabe si es mayor de edad // la misma de retornar TRUE o FALSE // debe notar que >= hace incluyente al número 18 if (edad>=18) { stdout.writeln('Eres mayor de edad.'); } else { stdout.writeln('Eres menor de edad.'); } }
For
El ciclo for en DART le permite iterar en bucle.
cicloFor(){ // Imprime linea por consola. stdout.writeln('¿Cuantos saludos quieres?'); // Solcitiar información // La misma es asignada a una variable int numSaludos = int.parse(stdin.readLineSync()); // Como standart se usa la variable i para el primer ciclo (pero puedes el nombre que quieras) // El bucle se va a ejecutar mientar i sea menor a [numSaludos] for (var i = 0; i < numSaludos; i++) { // Imprime un String CONCATENANDO la variable i // Recuerda que estamos iniciando el ciclo con i=0 por eso le sumamos 1 solo en la parte impresa. // Dicha suma no se esta asignando a la variable print('Hola número ${i+1}'); } }
For In
Muy parecido al ciclo For, con al diferencia que aquí iteramos LIST o SET.
cicloForIn(){ List<String> amigos = ['Luis','Juan','Pepe']; for (var amigo in amigos) { print('$amigo es tu amigo'); } }
While
Un ciclo While en DART evalúa la condición antes del ciclo:
cicloWhile(){ int edad = 0; while (edad<18) { stdout.writeln('Debes tener más de 18 para continuar.'); stdout.writeln('¿Cual es tu edad?'); edad = int.parse(stdin.readLineSync()); } stdout.writeln('Bienvenido'); }
Do While
Un ciclo do-while evalúa la condición después del ciclo:
cicloDoWhile(){ int contador = 0; String respuesta = ''; do { contador++; stdout.writeln('Contador: $contador'); stdout.writeln('¿Quieres sumar uno más?'); respuesta = stdin.readLineSync(); } while (respuesta=='y'); }
Switch
- Las declaraciones de Switch en DART comparan constantes enteras, de cadena o de tiempo de compilación usando ==.
- Todos los objetos comparados deben ser instancias de la misma clase (y no de ninguno de sus subtipos) y la clase no debe anular ==.
- Los tipos enumerados funcionan bien en declaraciones de cambio.
estructuraSwitch(){ // Imprimir linea en consola stdout.writeln('Ingresa el número del día de la semana:'); int dia = int.parse(stdin.readLineSync()); switch (dia) { case 1 : stdout.writeln('Lun'); break; case 1 : stdout.writeln('Mar'); break; case 1 : stdout.writeln('Mie'); break; case 1 : stdout.writeln('Jue'); break; case 1 : stdout.writeln('Vie'); break; case 1 : stdout.writeln('Sab'); break; case 1 : stdout.writeln('Dom'); break; default: stdout.writeln('No es un día de la Semana'); } }
Break / Continue
- Utilice la break para detener el bucle.
- Utilice continue para pasar a la siguiente iteración del ciclo.
breakContinue(){ for (var i = 0; i < 10; i++) { if (i==2) { // Continua dentro del Ciclo pero salta al siguiente elemento continue; } if (i==5) { // Sale totalmente del ciclo break; } print(i); } }