溫馨提示×

Ruby中塊是怎么工作的

小億
85
2024-04-12 14:15:09
欄目: 編程語言

在Ruby中,塊是一種匿名函數(shù)的形式,可以被傳遞給方法來執(zhí)行特定的操作。塊通常由花括號({})或者do/end關鍵字包圍,可以接受參數(shù)并執(zhí)行其中的代碼。

塊可以被傳遞給方法作為參數(shù),然后在方法內(nèi)部通過yield關鍵字執(zhí)行。例如:

def greet
  puts "Hello"
  yield
end

greet do
  puts "World"
end

在上面的例子中,greet方法接受一個塊作為參數(shù),并在方法內(nèi)部通過yield執(zhí)行該塊。最終輸出為:

Hello
World

塊還可以接受參數(shù),并使用| |語法定義參數(shù)。例如:

def calculate(num1, num2)
  yield(num1, num2)
end

calculate(5, 3) do |a, b|
  puts a + b
end

在上面的例子中,calculate方法接受兩個參數(shù)和一個塊作為參數(shù),并在方法內(nèi)部通過yield執(zhí)行該塊,并傳遞參數(shù)給塊。最終輸出為:

8

總的來說,Ruby中的塊可以用來執(zhí)行一些特定的操作,并且可以被傳遞給方法來實現(xiàn)一些靈活的邏輯控制。

0