WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Instrução LOOP

A instrução LOOP executa a seqüência de instruções repetidamente e incondicionalmente.

Certifique-se de que a lógica do programa oferece alguma maneira de encerrar o loop. Você pode utilizar instruções LEAVE ou RETURN.

Sintaxe

Ler diagrama de sintaxeManter visual do diagrama de sintaxe
>>-+-LOOP--instruções--END--LOOP------------------+------------><
   '-Label--:--LOOP--instruções--END--LOOP--Label-'   

Se presente, Label fornecerá um nome à instrução. Isso não tem efeito sobre o comportamento da instrução LOOP, mas permite que statements incluam instruções ITERATE e LEAVE ou outras instruções rotuladas, que por sua vez incluem ITERATE e LEAVE. O segundo Label pode estar presente somente se o primeiro Label estiver presente e, se estiver, os rótulos devem ser idênticos.

Duas ou mais instruções rotuladas no mesmo nível podem tem o mesmo Label, mas isso nega parcialmente a vantagem do segundo Label. A vantagem é que corresponde cada END com o seu LOOP de maneira não ambígua e precisa. Entretanto, uma instrução rotulada em statements não pode ter o mesmo rótulo, porque isso torna ambíguo o comportamento das instruções ITERATE e LEAVE.

A instrução LOOP é útil em casos em que a lógica requerida dita que um loop é sempre abandonado no meio do caminho. Isso porque, nesses casos, o teste de uma condição de loop que ocorre nas instruções REPEAT ou WHILE é desnecessário e um desperdício.

Exemplo

DECLARE i INTEGER;
SET i = 1;
X : LOOP 
  ...
  IF i >= 4 THEN
    LEAVE X;
  END IF;
  SET i = i + 1;
END LOOP X;
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:29:54


Tópico de ReferênciaTópico de Referência | Versão 8.0.0.5 | ak05080_