Categories
Swift Development

100 Dias de Swift Día 4

Día 4

Estas son mis notas del curso hackingwithswift

Entrada anterior

“it’s hardware that makes a machine fast, but it’s software that makes a fast machine slow.”

Craig Bruce

«Es el hardware lo que hace rápida a una maquina, pero el software es lo que la hace lenta.»

Craig Bruce

Loops

Los loops adoptan varias formas pero su mecánica es la misma, un código que se repite hasta que una condición se vuelva falsa

For

El loop mas comun es «For», que itera sobre Arrays y Ranges, cada iteración nueva asigna un elemento a una constante. Por ejemplo en el siguiente Range

let contar = 1...10
for numero in contar {
    print("el numero es \(numero)")
}

super simple verdad, lo mismo con los Arrays

let albums = ["Red", "1989", "Reputation"]

for album in albums {
    print("\(album) esta en Apple Music")
}

Si no necesitas crear ninguna constante puedes hacer el loop de esta manera

for _ in 1...5 {
    print("Hoy no se fia, mañana si")
}

While

«While» es también un loop muy usado, básicamente ejecuta una acción si se cumple la condición

var numero = 1

while numero <= 10 {
    print(numero)
    numero += 1
}

print("Listos o no, allá voy!")

Repeat

Es similar a While solo que la condición va al final esto quiere decir que el código se ejecuta primero y luego verifica la condición

var numero = 1

repeat {
    print(numero)
    numero += 1
} while number <= 20

print("Listos o no, allá voy!")

La mayor diferencia como puedes ver es que el código con «repeat» se ejecutara por lo menos una vez

while false {
//Este código nunca se ejecuta
    print("Esto es falso")
}

repeat {
//Este código se ejecutara una vez
    print("Esto es falso")
} while false

Break

Si quieres salir de un bucle puedes usar «break»

var numero = 1

repeat {
    print(numero)
    if numero == 10 {
      print("Ya me aburrí, Listos o no, allá voy!")
      break
    }
    numero += 1

} while number <= 20

print("Listos o no, allá voy!")

Si tienes loops anidados y quieres salir de ambos puedes usar «break (etiqueta de tu loop principal)»

etiquetaLoopPadre: for i in 1...10 {
    for j in 1...10 {
        let resultado = i * j
        print ("\(i) * \(j) es igual a \(resultado)")

        if resultado == 50 {
            print("Eso es todo")
            break etiquetaLoopPadre
        }
    }
}

Continue

Así como podemos salir de un loop podemos omitir ciertos elementos usando «continue» por ejemplo en el siguiente ejemplo solo imprimimos números pares

for i in 1...10 {
    if i % 2 == 1 {
    //omitir si es primo
        continue
    }

    print(i)
}

Loops infinitos

Los loop infinitos son algo muy común en iOS básicamente son loops que se ejecutan de manera indeterminada, pero ten cuidado recuerda establecer una salida para tu bucle si no se repetirá para siempre.

Lo mas común es poner una condición verdadera en un While

var contador = 0

while true {
    print(" ")
    contador += 1

    if contador == 273 {
        break
    }
}

Resumen

Los loops se repiten hasta que una condición es falsa

Los loops mas comunes son For y While

Puedes omitir usar la constate de For si no la necesitas

Puedes usar Repeat en lugar de While si quieres que tu código se ejecute por lo menos una vez

Para salir de un bucle usa break y para omitir un elemento continue

y por ultimo los loops infinitos necesitan que les suministres una salida para

//y bueno esos son los loops 

Referencias

https://www.hackingwithswift.com/100/4

https://www.hackingwithswift.com/100

Proximo Día