Ruby解包数组块


settings = [ ['127.0.0.1', 80], ['0.0.0.0', 443] ]

我该怎么做:

settings.each do |ip, port|  
    ...
end

代替:

settings.each do |config|  
    ip, port = *config
    ...
end

第一个例子可以正常工作,因为Ruby会解构块参数。有关ruby中解构的更多信息,请参阅这篇存档的文章。

您正在寻找的方法是Array#map

settings = [ ['127.0.0.1', 80], ['0.0.0.0', 443] ]
settings.map { |ip, port| puts "IP: #{ip} PORT: #{port}"  } 

返回

#// => IP: 127.0.0.1 PORT: 80<br/>
#// => IP: 0.0.0.0 PORT: 443

相关内容

  • 没有找到相关文章