当前位置 : 主页 > 编程语言 > ruby >

在Ruby中,“块出来的收益”是什么意思?

来源:互联网 收集:自由互联 发布时间:2021-06-23
我是 Ruby的新手,我正在尝试以下方法: mySet = numOfCuts.times.map{ rand(seqLength) } 但是我得到了“收益率被阻止”的错误.我不确定他的意思.顺便说一句,这个问题是我问过的一个更普遍的问题
我是 Ruby的新手,我正在尝试以下方法:

mySet = numOfCuts.times.map{ rand(seqLength) }

但是我得到了“收益率被阻止”的错误.我不确定他的意思.顺便说一句,这个问题是我问过的一个更普遍的问题的一部分here.

问题是,times方法期望得到一个它将产生控制权的块.但是你还没有传递一个块.有两种方法可以解决这个问题.首先是不使用时间:

mySet = (1..numOfCuts).map{ rand(seqLength) }

或者传递一个块到它:

mySet = []
numOfCuts.times {mySet.push( rand(seqLength) )}
上一篇:Ruby,类和继承
下一篇:Ruby VM之间的差异
网友评论