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
nivel mega basico
Nível mega importante.
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.
o link dos condicionas ta quebrado
o link dos condicionas ta quebrado 2
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!
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 !!