Skip to content

Estruturas de repetição em Swift

Estruturas de repetição em Swift

Bom pessoal vamos começar com mais um post sobre o Swift, assim como o ultimo post onde falei sobre estruturas condicionais neste post vamos falar sobre outro recurso extremamente importante para a programação estruturas de repetição os nossos famosos laços.

A principio, o que é um laço?
A ideia básica é criar um pequeno bloco de código que colocamos para se repetir enquanto a condição for verdadeira.

E quais os tipos de laços que existem e quais suas diferenças?

Dentro do Swift temos 4 tipos de laço:

O laço While (enquanto) a estrutura básica dele é a seguinte:

while (condições){
    // códigos que será executado
}

Ou seja, enquanto minha condição for verdadeira, o bloco de código será executada, porem tome cuidado com as condições que você cria para executar laços por exemplo se você cria uma condição 1 < 2, o código será executado infinitamente afinal 1 sempre será menor que 2.

Vamos criar um pequeno exemplo agora:

var teste: Int = 0;
while repetições < 3 {
    println("Nosso laço se repetiu:\(teste+1)");
    teste++;
}

Execute esse código e veja o que acontece em seu terminal, para fazer alterações no número de vezes que ele será executado podemos simplesmente alterar a condição;

Outro laço que podemos usar com Swift é o laço Do-While, ( que significa faça enquanto ) sua estrutura não diferencia muito do while, porem ele tem uma peculiaridade bem interessante ele executara seu bloco de código pelo menos uma vez:

Vamos explicar melhor com nosso exemplo, vamos criar um array que representara o carros em vagas de um estacionamento, cada vaga será equivalente a uma posição no array, e em cada posição um carro, (ok, ok, nesse exemplo temos que usar MUITO a imaginação mas vamos la).

//Nosso estacionamento, lembre-se de usar a imaginação
var carros = ["Ferrari", "Gol", "Fusca", "Fiat 147"]
var contador: Int = 0
do {
    println("Esse é meu carro?")
    contador++;
    if(carros[contador] == "Fusca"){
        println("Achei meu carro")
    }
} while carros[contador] != "Fusca"

Nesse exemplo, nós percorremos um array verificando cada carro, se esse carro que tem nessa vaga é o nosso, e diferente do while nós executamos toda a verificação pelo menos um vez, para então verificar se a condição nos permitiria executar o bloco novamente.

Vamos o laço For agora, esse laço faz exatamente a mesma coisa que um laço while, sua principal diferença é sua estrutura enquanto o laço while você precisa declarar uma condição de incremento em no meio de seu bloco, com o laço for você pode fazer isso tudo em uma única linha, sua estrutura básica funciona assim:

for (inicio, condição , incremento){
  // código
}

O interessante é que podemos por exemplo declarar uma variável no meio do comando for, por exemplo:

for(var contador: Int = 0; contador < 10; ++contador) {
    println("Nosso laço foi executado");
}

E apor fim nosso ultimo laço o For-in esse que tem propriedades muito interessantes, por exemplo podemos mandar ele percorrer um array de maneira MUITO mais simples que com os outros laços, vamos voltar a nosso array de carros, digo nosso estacionamento.

var carros = ["Ferrari", "Gol", "Fusca", "Fiat 147"]
for carro: String in carros{
    println(carro)
}

Nesse laço nós percorremos o array mostrando todos os valores dele no caso mostrando todos os carros dele.

Espero que esse post tenha ajudado alguém, foi bem curto, porem tem um conteúdo bem interessante para quem está aprendendo a programar, e se você gostou deste post, de uma olhada no ultimo onde eu falei sobre estruturas de condição.

No comment yet, add your voice below!


Add a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *