บทช่วยสอน วงจรทับทิม ที่ดีที่สุดในปี 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