我有一大堆字符:
input = ["p", "f", "p", "t" ... "g"]
Run Code Online (Sandbox Code Playgroud)
我试图获取数组的一部分并将其转换为一个集合:
sub = input.slice(0, 4).to_set
Run Code Online (Sandbox Code Playgroud)
但口译员轰炸了:
undefined method `to_set' for ["p", "f", "p", "t"]:Array (NoMethodError)
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况?这段irb代码执行没有问题。
该Enumerable#to_set方法由 Ruby 的Set. 默认情况下它不是require-d,因此如果您尝试使用它,就会收到错误消息。
但 inirb Set已经是必需的。您可以通过以下方式验证:
require 'set' # => false
Run Code Online (Sandbox Code Playgroud)
这是之前在 irb 中提出的一个问题。
| 归档时间: |
|
| 查看次数: |
409 次 |
| 最近记录: |