O melhor tutorial ciclo de rubi em 2024. Neste tutorial você pode aprender Rubiwhile,Rubi,enquanto modificador,Rubiaté declarações,Rubiaté modificadores,Rubypara declaração,instrução breakRubi,Rubipróxima instrução,declaração redoRubi,declaração de repetiçãode Ruby,

ciclo de rubi

Rubi no circuito para realizar o mesmo bloco de código vezes várias. Esta vontade detalhe seção de todos os loops suporte a Ruby.

Rubiwhile

gramática

while conditional [do]
   code
end

ou

<pre>
while conditional [:]
   code
end

Quando acondicionalfor verdadeiro, ele executacódigo.

Ou sintaxe: você pode ser omitida. Mas para escrever uma fórmula enquanto na linha, ou você deve fazer: expressão ou programa além condicional blocos.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$i = 0
$num = 5

while $i < $num  do
   puts("在循环语句中 i = #$i" )
   $i +=1
end

O exemplo acima saída é:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4

Rubi,enquanto modificador

gramática

code while condition

或者

begin 
  code 
end while conditional

Quando acondicionalfor verdadeiro, ele executacódigo.

Se, enquantoem um modificador semrescueou mais tardecomeçar adeclaração garantir acláusula, ocódigo será executada uma vez antes do julgamentocondicional.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$i = 0
$num = 5
begin
   puts("在循环语句中 i = #$i" )
   $i +=1
end while $i < $num

O exemplo acima saída é:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4

Rubiaté declarações

until conditional [do]
   code
end

Quando acondicionalé falsa, executarcódigo.

Sintaxe fazer pode ser omitida. Mas a escrever até que a fórmula, você deve fazer a expressão ou programa blocos condicionais para além da linha.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$i = 0
$num = 5

until $i > $num  do
   puts("在循环语句中 i = #$i" )
   $i +=1;
end

O exemplo acima saída é:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4
在循环语句中 i = 5

Rubiaté modificadores

gramática

code until conditional

或者

begin
   code
end until conditional

Quando acondicionalé falsa, executarcódigo.

Seatéagora modificador em um comunicado que nenhumresgateou mais tardecomeçar agarantircláusula, ocódigo será executada uma vez antes do julgamentocondicional.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$i = 0
$num = 5
begin
   puts("在循环语句中 i = #$i" )
   $i +=1;
end until $i > $num

O exemplo acima saída é:

在循环语句中 i = 0
在循环语句中 i = 1
在循环语句中 i = 2
在循环语句中 i = 3
在循环语句中 i = 4
在循环语句中 i = 5

Rubypara declaração

gramática

for variable [, variable pt.] in expression [do]
   code
end

Primeiro expressão de cálculo para obter um objecto, em seguida, aexpressãode cada elemento separadamente umcódigo.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

for i in 0pt5
   puts "局部变量的值为 #{i}"
end

Aqui, nós definimos o intervalo 0pt5. Declaração para i na 0pt5 permitir que o valor de i de 0 a 5 (com 5).

O exemplo acima saída é:

局部变量的值为 0
局部变量的值为 1
局部变量的值为 2
局部变量的值为 3
局部变量的值为 4
局部变量的值为 5

loopfor pt. iné quase exatamente equivalente a:

(expression).each do |variable[, variablept.]| code end

No entanto, para loop não criar um novo espaço para as variáveis ​​locais.

Sintaxe fazer pode ser omitida. Mas para escrever a fórmula em uma linha, então você deve fazer de expressão ou de programas blocos separados condicionais.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

(0pt5).each do |i|
   puts "局部变量的值为 #{i}"
end

O exemplo acima saída é:

局部变量的值为 0
局部变量的值为 1
局部变量的值为 2
局部变量的值为 3
局部变量的值为 4
局部变量的值为 5

instrução breakRubi

gramática

break

Rescisão do laço mais interno. Se você tiver invocado dentro do bloco, o bloco está relacionado com a terminação (o método retorna nulo).

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

for i in 0pt5
   if i > 2 then
      break
   end
   puts "局部变量的值为 #{i}"
end

O exemplo acima saída é:

局部变量的值为 0
局部变量的值为 1
局部变量的值为 2

Rubipróxima instrução

gramática

next

Ir para a próxima iteração do loop. Se você ligar no bloco termina o bloco de execução(rendimento deexpressão retorna nil).

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

for i in 0pt5
   if i < 2 then
      next
   end
   puts "局部变量的值为 #{i}"
end

O exemplo acima saída é:

局部变量的值为 2
局部变量的值为 3
局部变量的值为 4
局部变量的值为 5

declaração redoRubi

gramática

redo

Reiniciar a iteração do loop mais interno, a condição de loop não está marcada. Se você ligar no bloco, em seguida, reiniciaro rendimentoouchamada.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

for i in 0pt5
   if i < 2 then
      puts "局部变量的值为 #{i}"
      redo
   end
end

Isso produz os seguintes resultados, e entrará num ciclo infinito:

局部变量的值为 0
局部变量的值为 0
ptptptptptptptptptptptptptpt

declaração de repetiçãode Ruby

NOTA: 1.9 e versões posteriores não suportam a repetição uso em um loop.

gramática

retry

Serepetiçãoaparece na expressão começará cláusula de salvamento, a partir do início do corpo começam a re-início.

begin
   do_something   # 抛出的异常
rescue
   # 处理错误
   retry          # 重新从 begin 开始
end

Se repetição aparece na iteração, ou para a expressão dentro do corpo, reitera a chama dentro do bloco. parâmetros de iteração reavaliada.

for i in 1pt5
   retry if some_condition # 重新从 i == 1 开始
end

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

for i in 1pt5
   retry if  i > 2
   puts "局部变量的值为 #{i}"
end

Isso produz os seguintes resultados, e entrará num ciclo infinito:

局部变量的值为 1
局部变量的值为 2
局部变量的值为 1
局部变量的值为 2
局部变量的值为 1
局部变量的值为 2
ptptptptptptptptptptptptptpt
ciclo de rubi
10/30