บทช่วยสอน วงจรทับทิม ที่ดีที่สุดในปี 2024 ในบทช่วยสอนนี้ คุณสามารถเรียนรู้ ทับทิมขณะที่คำสั่ง,ทับทิมในขณะที่ปรับปรุง,ทับทิมจนกว่างบ,ทับทิมจนการปรับเปลี่ยน,ทับทิมงบ,คำสั่งแบ่งทับทิม,ทับทิมคำสั่งต่อไป,คำสั่งทำซ้ำทับทิม,งบลองใหม่อีกครั้งทับทิม,

วงจรทับทิม

ทับทิมในวงสำหรับการดำเนินการบล็อกเดียวกันของรหัสหลายต่อหลายครั้ง จะดูรายละเอียดส่วนนี้ลูปทั้งหมดสนับสนุนทับทิม

ทับทิมขณะที่คำสั่ง

ไวยากรณ์

while conditional [do]
   code
end

หรือ

<pre>
while conditional [:]
   code
end

เมื่อเงื่อนไขเป็นจริงจะรันรหัส

หรือไวยากรณ์: คุณสามารถละเว้น แต่การที่จะเขียนสูตรขณะที่อยู่ในสายหรือผู้ที่คุณต้องทำ: นิพจน์เงื่อนไขนอกเหนือหรือโปรแกรมบล็อก

ตัวอย่าง

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

$i = 0
$num = 5

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

ทับทิมในขณะที่ปรับปรุง

ไวยากรณ์

code while condition

或者

begin 
  code 
end while conditional

เมื่อเงื่อนไขเป็นจริงจะรันรหัส

ถ้าในขณะที่ปรับแต่งโดยไม่มีการช่วยเหลือหรือหลังจากนั้นเริ่มต้นคำสั่งให้แน่ใจว่าข้อรหัสจะถูกดำเนินการอีกครั้งก่อนการตัดสินเงื่อนไข

ตัวอย่าง

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

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

ทับทิมจนกว่างบ

until conditional [do]
   code
end

เมื่อเงื่อนไขเป็นเท็จรันโค้ด

ไวยากรณ์ไม่สามารถละเว้น แต่การที่จะเขียนจนสูตรที่คุณต้องทำการแสดงออกหรือโปรแกรมเงื่อนไขบล็อกออกจากกันในแถว

ตัวอย่าง

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

$i = 0
$num = 5

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

ทับทิมจนการปรับเปลี่ยน

ไวยากรณ์

code until conditional

或者

begin
   code
end until conditional

เมื่อเงื่อนไขเป็นเท็จรันโค้ด

ถ้าจนถึงขณะนี้ปรับแต่งในการแถลงว่าไม่มีการช่วยเหลือหรือหลังจากนั้นจะเริ่มต้นให้แน่ใจว่าข้อรหัสจะถูกดำเนินการอีกครั้งก่อนการตัดสินเงื่อนไข

ตัวอย่าง

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

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

ทับทิมงบ

ไวยากรณ์

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

การแสดงออกของการคำนวณครั้งแรกที่จะได้รับวัตถุแล้วการแสดงออกสำหรับแต่ละองค์ประกอบแยกรหัส

ตัวอย่าง

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

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

ที่นี่เราได้กำหนดไว้ 0th5 ช่วง งบสำหรับฉันใน 0th5 ช่วยให้ค่าของฉัน 0-5 (5)

เอาท์พุทตัวอย่างข้างต้นคือ

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

สำหรับ th. ในวงเกือบจะเทียบเท่ากับ:

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

แต่สำหรับวงไม่สร้างขอบเขตใหม่สำหรับตัวแปรท้องถิ่น

ไวยากรณ์ไม่สามารถละเว้น แต่การที่จะเขียนสูตรในแถวแล้วคุณจะต้องทำตามเงื่อนไขที่นอกเหนือการแสดงออกหรือโปรแกรมบล็อก

ตัวอย่าง

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

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

คำสั่งแบ่งทับทิม

ไวยากรณ์

break

การสิ้นสุดของสุดห่วง ถ้าคุณได้เรียกภายในบล็อก, บล็อกที่เกี่ยวข้องกับการเลิกจ้าง (วิธีส่งกลับไม่มี)

ตัวอย่าง

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

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

ทับทิมคำสั่งต่อไป

ไวยากรณ์

next

ข้ามไปยังย้ำต่อไปของวง ถ้าคุณโทรในบล็อกบล็อกยุติการดำเนินการ(ผลตอบแทนการแสดงออกของผลตอบแทนที่ไม่มี)

ตัวอย่าง

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

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

เอาท์พุทตัวอย่างข้างต้นคือ

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

คำสั่งทำซ้ำทับทิม

ไวยากรณ์

redo

การเริ่มต้นใหม่ย้ำสุดห่วงสภาพห่วงไม่ได้ตรวจสอบถ้าคุณโทรในบล็อกแล้วรีสตาร์ทอัตราผลตอบแทนหรือโทร

ตัวอย่าง

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

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

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้และจะเข้าสู่วง จำกัด :

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

งบลองใหม่อีกครั้งทับทิม

หมายเหตุ: 1.9 และรุ่นที่ใหม่ไม่สนับสนุนการใช้ลองใหม่ในวง

ไวยากรณ์

retry

ถ้าลองใหม่อีกครั้งปรากฏในสำนวนที่ว่าเริ่มต้นประโยคกู้ภัยจากจุดเริ่มต้นของร่างกายเริ่มที่จะเริ่มต้นใหม่

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

ถ้าลองใหม่อีกครั้งปรากฏในการทำซ้ำหรือการแสดงออกภายในร่างกาย-iterates เรื่องการโทรภายในบล็อก พารามิเตอร์ซ้ำคล้อย

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

ตัวอย่าง

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

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

นี้ก่อให้เกิดผลลัพธ์ต่อไปนี้และจะเข้าสู่วง จำกัด :

局部变量的值为 1
局部变量的值为 2
局部变量的值为 1
局部变量的值为 2
局部变量的值为 1
局部变量的值为 2
thththththththththththththth
วงจรทับทิม
10/30