Programando em ActionScript 3.0 – Loops

Programando em ActionScript 3.0 – Loops

Salve comunidade!

Programando em ActionScript 3.0

Parte 1 – Variáveis
http://www.mxstudio.com.br/flash/programando-em-actionscript-30-variaveis/
Parte 2 – Operadores
http://www.mxstudio.com.br/flash/programando-em-actionscript-30-operadores/
Parte 3 – Condicionais
http://www.mxstudio.com.br/flash/programando-em-actionscript-30-condicionais/

Prosseguindo no nosso estudo do ActionScript 3.0, eu vou mostrar agora o trabalho com estruturas de repetição, os chamados Loops.

Loops são estruturas de código que podem executar um bloco de ações repetidas vezes de maneira automatizada e em um curto espaço de tempo.

Não pense que é para situações do tipo: “a cada 2 segundos troca a imagem automaticamente”. Não.

A idéia aqui é execução de código mas de forma que quando o usuário abre o arquivo depois do loop iniciado ele já tem o resultado final do processamento.

Vamos aos principais tipos de loops no Flash.

Estrutura de Repetição FOR

Seguramente o tipo de loop mais utilizado, pois tem uma sintaxe e um controle muito facilitados.

O FOR executa um bloco de ações de acordo com uma expressão a ser resolvida para definir quantas vezes esse bloco de ações será executado.

Sintaxe
for (inicio; limite; incremento)
{
bloco de ações a serem executadas.
}

Nós utilizamos muito o FOR para criação de tarefas automáticas e que exigiriam códigos muito repetitivos.

Exemplo

for (var i:uin = 0; i < 5; i ++)
{
trace (i);
}

Fazendo a leitura de interpretação desse código nós temos o seguinte:

Cria uma variável uint valendo 0, com incremento de 1 em 1 (i++) e enquanto essa variável for menor que 5 executa o escopo, executa o que estiver dentro das chaves.

No caso um trace de i.

O método trace exibe no painel output o valor de i a cada execução do for enquanto a condição de limite for verdadeira.

O retorno desse código é : 0, 1, 2, 3, 4

0 porque o primeiro valor de i é 0 de acordo com a minha declaração, e até 4 porque quando i vale 5 ele não é menor que 5, ele seria menor igual, o que não é o caso.

Então de forma resumida esse é o papel do FOR executar um bloco de código de acordo com uma expressão de limite.

Estrutura de Repetição While

O loop while trabalha com uma expressão simples sem possuir o incremento a variável dentro de sua declaração

Sintaxe

while (limite)
{
bloco de ações
}

Exemplo

// Declara a variável contador
var contador:uint = 0;
// Enquanto contador for menor que 5 executa o bloco de ações
while (contador < 5)
{
trace (contador);
// Depois de exibir o contador atual, incrementa seu valor em 1
contador ++;
}


Estrutura de Repetição Do While

O loop do while também trabalhar com uma expressão simples de limite porém independentemente se a expressão for verdadeira o bloco de código sempre vai ser executado pelo menos uma vez.

Sintaxe

do
{
bloco de ações
}while (limite)

Exemplo

// Declara a variável contador
var contador:uint = 0;
// Executa uma vez o bloco de código
do
{
trace (contador)
// Avalia a expressão de limite e caso ela seja verdadeira executa o bloco de código novamente.
} while (contador < 5)

Em linhas gerais não há muito diferença entre os loops no que diz respeito a velocidade de execução ou consumo de processamento, então a escolha de qual utilizar beira a preferência pessoal do desenvolvedor.

Nos nosso próximos exercícios, eu vou fazer uso do FOR que de maneira mais objetiva concentra na sua declaração tanto o início, quanto o limite e o incremento da variável para a avaliação da expressão.

Espero que vocês tenham gostado dessa breve apresentação dos loops que nós temos no ActionScript 3.0 e se preparem pois no próximo artigo já começaremos a criar exemplos práticos com base nesses artigos conceituais.

Até a próxima.

Em caso de dúvidas utilize nosso fórum.

Abraço,

Danilo Santana
Administrador do Portal MXSTUDIO

Escrito por Danilo Santana on maio 19, 2008. Arquivado em Flash. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Você pode deixar respostas para esse artigo

7 respostas a Programando em ActionScript 3.0 – Loops

  1. nivel mega basico

  2. Nível mega importante.

  3. Olá Danilo!

    Em AS 2.0 eu costumava usar muito um recurso para fazer uma varredura por objetos, por exemplo:

    for (i:Object in _root){
    if (_root[i]._name == “nomeQualquer”){
    executava ações para este MC}}

    já no AS 3.0 não consigo usar mais este recurso. Você sabe se existe algum outro recurso que posso usar para este fim?
    Grato.

  4. o link dos condicionas ta quebrado

  5. o link dos condicionas ta quebrado 2

  6. Muito bom, mas seria legal, pelo menos para mim, nos artigos, colocar para aqueles que ja conhecem a AS2 e metódos de lógica que não mudou nada do AS2 para o AS3. Porque nao ficariamos olhando passo a passo sendo que ja conhecemos só para ver se mudou algo =).

    Adorei seus artigos. =)

    GJ!

  7. Seria Bacana vc por os detalhes do código, cmo por exemplo:

    Diferença While X Do_While !

    O Do While sempre vai executar pelo menos 1 vez , enquanto o while so executa se condição TRUE =D

    Falow ae !!

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>