Latest web development tutorials

cykl Ruby

Ruby w pętli do wykonywania tego samego bloku kodu kilka razy. Ten rozdział opisuje wszystkie pętle wsparcie Ruby.

Rubywhile

gramatyka

while conditional [do]
   code
end

lub

<pre>
while conditional [:]
   code
end

Gdywarunkowejest prawdziwe, to wykonujekod.

Czy składnię: można pominąć. Ale napisać formułę, podczas gdy w kolejce, albo trzeba zrobić: wyrażenie siebie warunkowe lub programowych bloków.

Przykłady

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

$i = 0
$num = 5

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

Powyższy przykład wyjście jest:

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

Rubynatomiast modyfikator

gramatyka

code while condition

或者

begin 
  code 
end while conditional

Gdywarunkowejest prawdziwe, to wykonujekod.

Jeślinatomiastw modyfikatora bezratunekczy późniejzaczynająstwierdzenie zapewnićklauzulę,kod będzie wykonywany raz przed wyrokuwarunkowego.

Przykłady

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

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

Powyższy przykład wyjście jest:

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

Rubyaż sprawozdania

until conditional [do]
   code
end

Kiedyuwarunkowanejest fałszem, wykonaniekodu.

Składnia zrobić, można pominąć. Ale napisać do formuły, należy wykonać następujące wyrażenie warunkowe lub program bloki od siebie w rzędzie.

Przykłady

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

$i = 0
$num = 5

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

Powyższy przykład wyjście jest:

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

Rubyaż modyfikatorów

gramatyka

code until conditional

或者

begin
   code
end until conditional

Kiedyuwarunkowanejest fałszem, wykonaniekodu.

Jeślido tejpory modyfikator woświadczeniu,że żadnapomocczy późniejzaczynajązapewnićklauzulę,kod będzie wykonywany raz przed wyrokuwarunkowego.

Przykłady

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

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

Powyższy przykład wyjście jest:

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

Rubyna rachunku

gramatyka

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

Pierwszy wyraz obliczenia w celu uzyskania obiektu, towyrażeniedla każdego z elementów z osobnasymbol.

Przykłady

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

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

Tutaj mamy zdefiniowany zakres 0..5. Oświadczenie for i in 0..5 pozwalają wartość i od 0 do 5 (z 5).

Powyższy przykład wyjście jest:

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

Pętlafor ... injest prawie dokładnie równoważne:

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

Jednak dla pętli nie stwarza nowe możliwości dla zmiennych lokalnych.

Składnia zrobić, można pominąć. Ale pisać dla formule z rzędu, a potem trzeba zrobić poza wyrażenie warunkowe lub program bloków.

Przykłady

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

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

Powyższy przykład wyjście jest:

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

Rubyinstrukcja break

gramatyka

break

Rozwiązanie wewnętrznej pętli. Jeśli wywoływany w bloku, blok jest związane z zakończeniem stosunku pracy (metoda wraca nil).

Przykłady

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

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

Powyższy przykład wyjście jest:

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

Rubynastępna instrukcja

gramatyka

next

Skocz do następnej iteracji. Jeśli zadzwonisz w bloku kończy blok wykonawczy(otrzymującwyrażenie zwraca nil).

Przykłady

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

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

Powyższy przykład wyjście jest:

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

Rubystwierdzenie przerobić

gramatyka

redo

Ponowne uruchomienie wewnętrznej pętli iteracji, warunek pętli nie jest zaznaczona. Jeśli zadzwonisz w bloku, a następnie ponownieplonlubzadzwoń.

Przykłady

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

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

To daje następujące wyniki, a wejdzie w nieskończoną pętlę:

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

Rubystwierdzenie ponawiania

UWAGA: 1.9 i nowsze wersje nie obsługują powtórzenie użytku w pętli.

gramatyka

retry

Jeśli pojawi się wponawianiawypowiedzi zaczynają klauzuli ratowniczej, od początku organizmie zaczynają się ponownie uruchomić.

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

Jeśli pojawi się w ponawiania iteracji lub ekspresji w organizmie, powtarza, połączenia wewnątrz bloku. Parametry iteracji ponownej ocenie.

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

Przykłady

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

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

To daje następujące wyniki, a wejdzie w nieskończoną pętlę:

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