Latest web development tutorials
×

Ruby หลักสูตร

Ruby หลักสูตร Ruby แนะนำโดยย่อ Ruby สิ่งแวดล้อม Ruby ติดตั้ง Linux Ruby ติดตั้ง Windows Ruby การเข้ารหัสจีน Ruby เลือกบรรทัดคำสั่ง Ruby ตัวแปรสภาพแวดล้อม Ruby ไวยากรณ์ Ruby ชนิดข้อมูล Ruby คลาสและวัตถุ Ruby กรณีระดับ Ruby ตัวแปร Ruby ผู้ประกอบการ Ruby หมายเหตุ Ruby เงื่อนไข Ruby การไหลเวียน Ruby ทาง Ruby กลุ่ม Ruby โมดูล Ruby เชือก Ruby แถว Ruby กัญชา Ruby วันที่และเวลา Ruby ขอบเขต Ruby iterator Ruby input และ output ไฟล์ Ruby File ชั้นเรียนและวิธี Ruby Dir ชั้นเรียนและวิธี Ruby ผิดปกติ

Ruby การสอนที่ทันสมัย

Ruby เชิงวัตถุ Ruby นิพจน์ปกติ Ruby การเข้าถึงฐานข้อมูล - DBI หลักสูตร Ruby MySQL Ruby CGI โครงการ Ruby CGI ทาง Ruby CGI Cookies Ruby CGI Sessions Ruby ส่ง Email SMTP Ruby Socket โครงการ Ruby XML, XSLT, XPath Ruby Web Services Ruby multithreading Ruby JSON Ruby RubyGems

วงจรทับทิม

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

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

ไวยากรณ์

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 ...] in expression [do]
   code
end

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

ตัวอย่าง

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

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

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

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

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

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

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

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

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

ตัวอย่าง

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

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

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

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

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

ไวยากรณ์

break

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

ตัวอย่าง

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

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

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

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

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

ไวยากรณ์

next

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

ตัวอย่าง

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

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

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

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

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

ไวยากรณ์

redo

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

ตัวอย่าง

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

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

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

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

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

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

ไวยากรณ์

retry

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

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

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

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

ตัวอย่าง

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

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

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

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