我一直被这个问题困扰。我将不胜感激。
指令 “在赔率数组上使用.each方法以打印出数组每个项目的值的两倍。换句话说,将每个项目乘以2。
确保使用打印而不是放置,因此您的输出将显示在一行上。”
我的密码
odds = [1,3,5,7,9]
odds.each do |placeholder|
odds *= 2
print odds
end
Run Code Online (Sandbox Code Playgroud)
小智 5
odds = [1,3,5,7,9]
odds.each do |placeholder|
odds *= 2
print odds
end
Run Code Online (Sandbox Code Playgroud)
您#each在这里的用法是正确的,但是请记住,#each接收到一个::Enumerable对象,传入的块使用变量placeholder将值封装::Array在迭代的当前点。因此,你需要使用placeholder检索要双倍的价值,而不是odds因为odds仍然是::Array该范围内::Enumerable的功能#each。
该代码可以按两行编写,如下所示:
odds = [1,3,5,7,9]
odds.each {|placeholder| print placeholder * 2 }
Run Code Online (Sandbox Code Playgroud)
严格来说,#map这将是首选的方法。
| 归档时间: |
|
| 查看次数: |
6160 次 |
| 最近记录: |