Ruby中的Lambda函数


在Ruby中,当我们想要使用匿名函数时,我们可以借助Lambda函数。它们在Ruby中也被视为对象,因为Ruby中的所有内容都被视为对象。

语法

在下方展示了声明Lambda函数的语法。

lambda = lambda {}

或者,我们还可以使用Lambda字面量。

lambda = ->() {}

让我们首先通过一个程序来检查Ruby中Lambda函数的类型。

示例1

考虑下方展示的代码

some_lambda_function = lambda { puts "Welcome to TutorialsPoint!"}

puts some_lambda_function.class

输出

Proc

示例2

现在让我们创建一个其他程序,其中我们将使用我们自己的Lambda函数,然后探索我们可以用来执行这些Lambda函数的不同类型的方法。

some_lambda_function = lambda { puts "Welcome to TutorialsPoint!"}

some_lambda_function.[]
some_lambda_function.call
some_lambda_function.()
some_lambda_function.===

在上面的例子中,我们可以看到有四种不同的方法可以用来在Ruby中调用Lambda函数。

输出

Welcome to TutorialsPoint!
Welcome to TutorialsPoint!
Welcome to TutorialsPoint!
Welcome to TutorialsPoint!

示例3

我们还可以向Ruby中的Lambda函数传递参数。考虑下方展示的代码。

some_lambda_function = lambda { | name | puts "Welcome to TutorialsPoint " + name}

some_lambda_function.call("Mukul")

输出

Welcome to TutorialsPoint Mukul

更新日期:25-Jan-2022

349次浏览

开启您的职业生涯

完成课程以获得认证

开始
广告